@bitgo-beta/sdk-coin-avaxp 3.2.3-alpha.49 → 3.2.3-alpha.490
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/dist/src/avaxp.d.ts +7 -6
- package/dist/src/avaxp.d.ts.map +1 -1
- package/dist/src/avaxp.js +50 -43
- package/dist/src/iface.d.ts +0 -4
- package/dist/src/iface.d.ts.map +1 -1
- package/dist/src/iface.js +1 -1
- package/dist/src/index.js +23 -9
- package/dist/src/lib/atomicInCTransactionBuilder.d.ts +2 -3
- package/dist/src/lib/atomicInCTransactionBuilder.d.ts.map +1 -1
- package/dist/src/lib/atomicInCTransactionBuilder.js +1 -1
- package/dist/src/lib/atomicTransactionBuilder.d.ts +2 -4
- package/dist/src/lib/atomicTransactionBuilder.d.ts.map +1 -1
- package/dist/src/lib/atomicTransactionBuilder.js +9 -10
- package/dist/src/lib/delegatorTxBuilder.d.ts +6 -7
- package/dist/src/lib/delegatorTxBuilder.d.ts.map +1 -1
- package/dist/src/lib/delegatorTxBuilder.js +11 -12
- package/dist/src/lib/deprecatedTransaction.d.ts +98 -0
- package/dist/src/lib/deprecatedTransaction.d.ts.map +1 -0
- package/dist/src/lib/deprecatedTransaction.js +344 -0
- package/dist/src/lib/deprecatedTransactionBuilder.d.ts +114 -0
- package/dist/src/lib/deprecatedTransactionBuilder.d.ts.map +1 -0
- package/dist/src/lib/deprecatedTransactionBuilder.js +210 -0
- package/dist/src/lib/exportInCTxBuilder.d.ts +8 -9
- package/dist/src/lib/exportInCTxBuilder.d.ts.map +1 -1
- package/dist/src/lib/exportInCTxBuilder.js +4 -4
- package/dist/src/lib/exportTxBuilder.d.ts +4 -5
- package/dist/src/lib/exportTxBuilder.d.ts.map +1 -1
- package/dist/src/lib/exportTxBuilder.js +3 -3
- package/dist/src/lib/iface.d.ts +19 -10
- package/dist/src/lib/iface.d.ts.map +1 -1
- package/dist/src/lib/iface.js +9 -4
- package/dist/src/lib/importInCTxBuilder.d.ts +4 -5
- package/dist/src/lib/importInCTxBuilder.d.ts.map +1 -1
- package/dist/src/lib/importInCTxBuilder.js +6 -6
- package/dist/src/lib/importTxBuilder.d.ts +4 -4
- package/dist/src/lib/importTxBuilder.d.ts.map +1 -1
- package/dist/src/lib/importTxBuilder.js +3 -3
- package/dist/src/lib/index.d.ts +2 -0
- package/dist/src/lib/index.d.ts.map +1 -1
- package/dist/src/lib/index.js +11 -3
- package/dist/src/lib/keyPair.d.ts +0 -1
- package/dist/src/lib/keyPair.d.ts.map +1 -1
- package/dist/src/lib/keyPair.js +20 -21
- package/dist/src/lib/permissionlessValidatorTxBuilder.d.ts +154 -0
- package/dist/src/lib/permissionlessValidatorTxBuilder.d.ts.map +1 -0
- package/dist/src/lib/permissionlessValidatorTxBuilder.js +431 -0
- package/dist/src/lib/transaction.d.ts +19 -41
- package/dist/src/lib/transaction.d.ts.map +1 -1
- package/dist/src/lib/transaction.js +68 -168
- package/dist/src/lib/transactionBuilder.d.ts +31 -82
- package/dist/src/lib/transactionBuilder.d.ts.map +1 -1
- package/dist/src/lib/transactionBuilder.js +57 -151
- package/dist/src/lib/transactionBuilderFactory.d.ts +16 -8
- package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -1
- package/dist/src/lib/transactionBuilderFactory.js +77 -19
- package/dist/src/lib/utils.d.ts +23 -9
- package/dist/src/lib/utils.d.ts.map +1 -1
- package/dist/src/lib/utils.js +72 -22
- package/dist/src/lib/utxoEngine.d.ts +10 -2
- package/dist/src/lib/utxoEngine.d.ts.map +1 -1
- package/dist/src/lib/utxoEngine.js +32 -7
- package/dist/src/lib/validatorTxBuilder.d.ts +4 -4
- package/dist/src/lib/validatorTxBuilder.d.ts.map +1 -1
- package/dist/src/lib/validatorTxBuilder.js +2 -2
- package/dist/test/resources/avaxp.d.ts +80 -6
- package/dist/test/resources/avaxp.d.ts.map +1 -1
- package/dist/test/resources/avaxp.js +166 -33
- package/dist/test/resources/tx/importP.js +8 -8
- package/dist/test/unit/avaxp.js +109 -117
- package/dist/test/unit/lib/exportC2PTxBuilder.js +23 -9
- package/dist/test/unit/lib/exportP2CTxBuilder.js +27 -17
- package/dist/test/unit/lib/importC2PTxBuilder.js +25 -11
- package/dist/test/unit/lib/importP2CTxBuilder.js +25 -13
- package/dist/test/unit/lib/keyPair.js +23 -9
- package/dist/test/unit/lib/permissionlessValidatorTxBuilder.d.ts +2 -0
- package/dist/test/unit/lib/permissionlessValidatorTxBuilder.d.ts.map +1 -0
- package/dist/test/unit/lib/permissionlessValidatorTxBuilder.js +341 -0
- package/dist/test/unit/lib/signFlowTestSuit.js +2 -2
- package/dist/test/unit/lib/transactionBuilderFactory.js +25 -11
- package/dist/test/unit/lib/utils.js +23 -9
- package/dist/test/unit/lib/utxoEngine.js +6 -6
- package/dist/test/unit/lib/validateTxBuilder.js +29 -20
- package/dist/tsconfig.tsbuildinfo +1 -12687
- package/package.json +15 -12
- package/.eslintignore +0 -5
- package/.eslintrc.json +0 -7
- package/.mocharc.yml +0 -8
- package/CHANGELOG.md +0 -318
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.DeprecatedTransactionBuilder = void 0;
|
|
7
|
+
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
8
|
+
const deprecatedTransaction_1 = require("./deprecatedTransaction");
|
|
9
|
+
const keyPair_1 = require("./keyPair");
|
|
10
|
+
const avalanche_1 = require("avalanche");
|
|
11
|
+
const utils_1 = __importDefault(require("./utils"));
|
|
12
|
+
const platformvm_1 = require("avalanche/dist/apis/platformvm");
|
|
13
|
+
class DeprecatedTransactionBuilder extends sdk_core_1.BaseTransactionBuilder {
|
|
14
|
+
constructor(_coinConfig) {
|
|
15
|
+
super(_coinConfig);
|
|
16
|
+
this._signer = [];
|
|
17
|
+
this.recoverSigner = false;
|
|
18
|
+
this._transaction = new deprecatedTransaction_1.DeprecatedTransaction(_coinConfig);
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Initialize the transaction builder fields using the decoded transaction data
|
|
22
|
+
*
|
|
23
|
+
* @param {DeprecatedTx} tx the transaction data
|
|
24
|
+
* @returns itself
|
|
25
|
+
*/
|
|
26
|
+
initBuilder(tx) {
|
|
27
|
+
const baseTx = tx.getUnsignedTx().getTransaction();
|
|
28
|
+
if (baseTx.getNetworkID() !== this._transaction._networkID ||
|
|
29
|
+
!baseTx.getBlockchainID().equals(this._transaction._blockchainID)) {
|
|
30
|
+
throw new Error('Network or blockchain is not equals');
|
|
31
|
+
}
|
|
32
|
+
this._transaction.setTransaction(tx);
|
|
33
|
+
return this;
|
|
34
|
+
}
|
|
35
|
+
/** @inheritdoc */
|
|
36
|
+
fromImplementation(rawTransaction) {
|
|
37
|
+
const tx = new platformvm_1.Tx();
|
|
38
|
+
tx.fromBuffer(avalanche_1.Buffer.from(rawTransaction, 'hex'));
|
|
39
|
+
this.initBuilder(tx);
|
|
40
|
+
return this.transaction;
|
|
41
|
+
}
|
|
42
|
+
/** @inheritdoc */
|
|
43
|
+
async buildImplementation() {
|
|
44
|
+
this.buildAvaxTransaction();
|
|
45
|
+
this.transaction.setTransactionType(this.transactionType);
|
|
46
|
+
if (this.hasSigner) {
|
|
47
|
+
this._signer.forEach((keyPair) => this.transaction.sign(keyPair));
|
|
48
|
+
}
|
|
49
|
+
return this.transaction;
|
|
50
|
+
}
|
|
51
|
+
// region Getters and Setters
|
|
52
|
+
/**
|
|
53
|
+
* When using recovery key must be set here
|
|
54
|
+
* TODO: STLX-17317 recovery key signing
|
|
55
|
+
* @param {boolean} true if it's recovery signer, default true.
|
|
56
|
+
*/
|
|
57
|
+
recoverMode(recoverSigner = true) {
|
|
58
|
+
this.recoverSigner = recoverSigner;
|
|
59
|
+
return this;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Threshold is an int that names the number of unique signatures required to spend the output.
|
|
63
|
+
* Must be less than or equal to the length of Addresses.
|
|
64
|
+
* @param {number}
|
|
65
|
+
*/
|
|
66
|
+
threshold(value) {
|
|
67
|
+
this.validateThreshold(value);
|
|
68
|
+
this._transaction._threshold = value;
|
|
69
|
+
return this;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Locktime is a long that contains the unix timestamp that this output can be spent after.
|
|
73
|
+
* The unix timestamp is specific to the second.
|
|
74
|
+
* @param value
|
|
75
|
+
*/
|
|
76
|
+
locktime(value) {
|
|
77
|
+
this.validateLocktime(new avalanche_1.BN(value));
|
|
78
|
+
this._transaction._locktime = new avalanche_1.BN(value);
|
|
79
|
+
return this;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* fromPubKey is a list of unique addresses that correspond to the private keys that can be used to spend this output.
|
|
83
|
+
* @param {string | stirng[]} senderPubKey
|
|
84
|
+
*/
|
|
85
|
+
fromPubKey(senderPubKey) {
|
|
86
|
+
const pubKeys = senderPubKey instanceof Array ? senderPubKey : [senderPubKey];
|
|
87
|
+
this._transaction._fromAddresses = pubKeys.map(utils_1.default.parseAddress);
|
|
88
|
+
return this;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* List of UTXO required as inputs.
|
|
92
|
+
* A UTXO is a standalone representation of a transaction output.
|
|
93
|
+
*
|
|
94
|
+
* @param {DecodedUtxoObj[]} list of UTXOS
|
|
95
|
+
*/
|
|
96
|
+
utxos(value) {
|
|
97
|
+
this.validateUtxos(value);
|
|
98
|
+
this._transaction._utxos = value;
|
|
99
|
+
return this;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Getter for know if build should sign
|
|
103
|
+
*/
|
|
104
|
+
get hasSigner() {
|
|
105
|
+
return this._signer !== undefined && this._signer.length > 0;
|
|
106
|
+
}
|
|
107
|
+
/** @inheritdoc */
|
|
108
|
+
get transaction() {
|
|
109
|
+
return this._transaction;
|
|
110
|
+
}
|
|
111
|
+
set transaction(transaction) {
|
|
112
|
+
this._transaction = transaction;
|
|
113
|
+
}
|
|
114
|
+
/** @inheritdoc */
|
|
115
|
+
signImplementation({ key }) {
|
|
116
|
+
this._signer.push(new keyPair_1.KeyPair({ prv: key }));
|
|
117
|
+
return this.transaction;
|
|
118
|
+
}
|
|
119
|
+
// endregion
|
|
120
|
+
// region Validators
|
|
121
|
+
/**
|
|
122
|
+
* Validates the threshold
|
|
123
|
+
* @param threshold
|
|
124
|
+
*/
|
|
125
|
+
validateThreshold(threshold) {
|
|
126
|
+
if (!threshold || threshold !== 2) {
|
|
127
|
+
throw new sdk_core_1.BuildTransactionError('Invalid transaction: threshold must be set to 2');
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Validates locktime
|
|
132
|
+
* @param locktime
|
|
133
|
+
*/
|
|
134
|
+
validateLocktime(locktime) {
|
|
135
|
+
if (!locktime || locktime.lt(new avalanche_1.BN(0))) {
|
|
136
|
+
throw new sdk_core_1.BuildTransactionError('Invalid transaction: locktime must be 0 or higher');
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
/** @inheritdoc */
|
|
140
|
+
validateAddress(address, addressFormat) {
|
|
141
|
+
if (!utils_1.default.isValidAddress(address.address)) {
|
|
142
|
+
throw new sdk_core_1.BuildTransactionError('Invalid address');
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
/** @inheritdoc */
|
|
146
|
+
validateKey({ key }) {
|
|
147
|
+
if (!new keyPair_1.KeyPair({ prv: key })) {
|
|
148
|
+
throw new sdk_core_1.BuildTransactionError('Invalid key');
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Check the raw transaction has a valid format in the blockchain context, throw otherwise.
|
|
153
|
+
* It overrides abstract method from BaseTransactionBuilder
|
|
154
|
+
*
|
|
155
|
+
* @param rawTransaction Transaction in any format
|
|
156
|
+
*/
|
|
157
|
+
validateRawTransaction(rawTransaction) {
|
|
158
|
+
utils_1.default.validateRawTransaction(rawTransaction);
|
|
159
|
+
}
|
|
160
|
+
/** @inheritdoc */
|
|
161
|
+
validateTransaction(transaction) {
|
|
162
|
+
// throw new NotImplementedError('validateTransaction not implemented');
|
|
163
|
+
}
|
|
164
|
+
/** @inheritdoc */
|
|
165
|
+
validateValue(value) {
|
|
166
|
+
if (value.isLessThan(0)) {
|
|
167
|
+
throw new sdk_core_1.BuildTransactionError('Value cannot be less than zero');
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* Check the list of UTXOS is empty and check each UTXO.
|
|
172
|
+
* @param values
|
|
173
|
+
*/
|
|
174
|
+
validateUtxos(values) {
|
|
175
|
+
if (values.length === 0) {
|
|
176
|
+
throw new sdk_core_1.BuildTransactionError("Utxos can't be empty array");
|
|
177
|
+
}
|
|
178
|
+
values.forEach(this.validateUtxo);
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Check the UTXO has expected fields.
|
|
182
|
+
* @param UTXO
|
|
183
|
+
*/
|
|
184
|
+
validateUtxo(value) {
|
|
185
|
+
['outputID', 'amount', 'txid', 'outputidx'].forEach((field) => {
|
|
186
|
+
if (!value.hasOwnProperty(field))
|
|
187
|
+
throw new sdk_core_1.BuildTransactionError(`Utxos required ${field}`);
|
|
188
|
+
});
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* Check the amount is positive.
|
|
192
|
+
* @param amount
|
|
193
|
+
*/
|
|
194
|
+
validateAmount(amount) {
|
|
195
|
+
if (amount.lten(0)) {
|
|
196
|
+
throw new sdk_core_1.BuildTransactionError('Amount must be greater than 0');
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* Check the buffer has 32 byte long.
|
|
201
|
+
* @param chainID
|
|
202
|
+
*/
|
|
203
|
+
validateChainId(chainID) {
|
|
204
|
+
if (chainID.length !== 32) {
|
|
205
|
+
throw new sdk_core_1.BuildTransactionError('Chain id are 32 byte size');
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
exports.DeprecatedTransactionBuilder = DeprecatedTransactionBuilder;
|
|
210
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwcmVjYXRlZFRyYW5zYWN0aW9uQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvZGVwcmVjYXRlZFRyYW5zYWN0aW9uQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFFQSxtREFPOEI7QUFDOUIsbUVBQWdFO0FBQ2hFLHVDQUFvQztBQUNwQyx5Q0FBcUQ7QUFDckQsb0RBQTRCO0FBRTVCLCtEQUE2RDtBQUU3RCxNQUFzQiw0QkFBNkIsU0FBUSxpQ0FBc0I7SUFLL0UsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFKZCxZQUFPLEdBQWMsRUFBRSxDQUFDO1FBQ3JCLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBSTlCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSw2Q0FBcUIsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxXQUFXLENBQUMsRUFBZ0I7UUFDMUIsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ25ELElBQ0UsTUFBTSxDQUFDLFlBQVksRUFBRSxLQUFLLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVTtZQUN0RCxDQUFDLE1BQU0sQ0FBQyxlQUFlLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsRUFDakUsQ0FBQztZQUNELE1BQU0sSUFBSSxLQUFLLENBQUMscUNBQXFDLENBQUMsQ0FBQztRQUN6RCxDQUFDO1FBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDckMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsa0JBQWtCO0lBQ1Isa0JBQWtCLENBQUMsY0FBc0I7UUFDakQsTUFBTSxFQUFFLEdBQUcsSUFBSSxlQUFLLEVBQUUsQ0FBQztRQUN2QixF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aW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCBCaWdOdW1iZXIgZnJvbSAnYmlnbnVtYmVyLmpzJztcbmltcG9ydCB7XG4gIEJhc2VBZGRyZXNzLFxuICBCYXNlS2V5LFxuICBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBUcmFuc2FjdGlvblR5cGUsXG4gIEJ1aWxkVHJhbnNhY3Rpb25FcnJvcixcbiAgQmFzZVRyYW5zYWN0aW9uLFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBEZXByZWNhdGVkVHJhbnNhY3Rpb24gfSBmcm9tICcuL2RlcHJlY2F0ZWRUcmFuc2FjdGlvbic7XG5pbXBvcnQgeyBLZXlQYWlyIH0gZnJvbSAnLi9rZXlQYWlyJztcbmltcG9ydCB7IEJOLCBCdWZmZXIgYXMgQnVmZmVyQXZheCB9IGZyb20gJ2F2YWxhbmNoZSc7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBEZWNvZGVkVXR4b09iaiwgRGVwcmVjYXRlZFR4IH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBUeCBhcyBQVk1UeCB9IGZyb20gJ2F2YWxhbmNoZS9kaXN0L2FwaXMvcGxhdGZvcm12bSc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBEZXByZWNhdGVkVHJhbnNhY3Rpb25CdWlsZGVyIGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uQnVpbGRlciB7XG4gIHByaXZhdGUgX3RyYW5zYWN0aW9uOiBEZXByZWNhdGVkVHJhbnNhY3Rpb247XG4gIHB1YmxpYyBfc2lnbmVyOiBLZXlQYWlyW10gPSBbXTtcbiAgcHJvdGVjdGVkIHJlY292ZXJTaWduZXIgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24gPSBuZXcgRGVwcmVjYXRlZFRyYW5zYWN0aW9uKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplIHRoZSB0cmFuc2FjdGlvbiBidWlsZGVyIGZpZWxkcyB1c2luZyB0aGUgZGVjb2RlZCB0cmFuc2FjdGlvbiBkYXRhXG4gICAqXG4gICAqIEBwYXJhbSB7RGVwcmVjYXRlZFR4fSB0eCB0aGUgdHJhbnNhY3Rpb24gZGF0YVxuICAgKiBAcmV0dXJucyBpdHNlbGZcbiAgICovXG4gIGluaXRCdWlsZGVyKHR4OiBEZXByZWNhdGVkVHgpOiB0aGlzIHtcbiAgICBjb25zdCBiYXNlVHggPSB0eC5nZXRVbnNpZ25lZFR4KCkuZ2V0VHJhbnNhY3Rpb24oKTtcbiAgICBpZiAoXG4gICAgICBiYXNlVHguZ2V0TmV0d29ya0lEKCkgIT09IHRoaXMuX3RyYW5zYWN0aW9uLl9uZXR3b3JrSUQgfHxcbiAgICAgICFiYXNlVHguZ2V0QmxvY2tjaGFpbklEKCkuZXF1YWxzKHRoaXMuX3RyYW5zYWN0aW9uLl9ibG9ja2NoYWluSUQpXG4gICAgKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05ldHdvcmsgb3IgYmxvY2tjaGFpbiBpcyBub3QgZXF1YWxzJyk7XG4gICAgfVxuICAgIHRoaXMuX3RyYW5zYWN0aW9uLnNldFRyYW5zYWN0aW9uKHR4KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgZnJvbUltcGxlbWVudGF0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiBEZXByZWNhdGVkVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IHR4ID0gbmV3IFBWTVR4KCk7XG4gICAgdHguZnJvbUJ1ZmZlcihCdWZmZXJBdmF4LmZyb20ocmF3VHJhbnNhY3Rpb24sICdoZXgnKSk7XG4gICAgdGhpcy5pbml0QnVpbGRlcih0eCk7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb247XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGFzeW5jIGJ1aWxkSW1wbGVtZW50YXRpb24oKTogUHJvbWlzZTxEZXByZWNhdGVkVHJhbnNhY3Rpb24+IHtcbiAgICB0aGlzLmJ1aWxkQXZheFRyYW5zYWN0aW9uKCk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5zZXRUcmFuc2FjdGlvblR5cGUodGhpcy50cmFuc2FjdGlvblR5cGUpO1xuICAgIGlmICh0aGlzLmhhc1NpZ25lcikge1xuICAgICAgdGhpcy5fc2lnbmVyLmZvckVhY2goKGtleVBhaXIpID0+IHRoaXMudHJhbnNhY3Rpb24uc2lnbihrZXlQYWlyKSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkcyB0aGUgYXZheCB0cmFuc2FjdGlvbi4gdHJhbnNhY3Rpb24gZmllbGQgaXMgY2hhbmdlZC5cbiAgICovXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBidWlsZEF2YXhUcmFuc2FjdGlvbigpOiB2b2lkO1xuXG4gIC8vIHJlZ2lvbiBHZXR0ZXJzIGFuZCBTZXR0ZXJzXG4gIC8qKlxuICAgKiBXaGVuIHVzaW5nIHJlY292ZXJ5IGtleSBtdXN0IGJlIHNldCBoZXJlXG4gICAqIFRPRE86IFNUTFgtMTczMTcgcmVjb3Zlcnkga2V5IHNpZ25pbmdcbiAgICogQHBhcmFtIHtib29sZWFufSB0cnVlIGlmIGl0J3MgcmVjb3Zlcnkgc2lnbmVyLCBkZWZhdWx0IHRydWUuXG4gICAqL1xuICBwdWJsaWMgcmVjb3Zlck1vZGUocmVjb3ZlclNpZ25lciA9IHRydWUpOiB0aGlzIHtcbiAgICB0aGlzLnJlY292ZXJTaWduZXIgPSByZWNvdmVyU2lnbmVyO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFRocmVzaG9sZCBpcyBhbiBpbnQgdGhhdCBuYW1lcyB0aGUgbnVtYmVyIG9mIHVuaXF1ZSBzaWduYXR1cmVzIHJlcXVpcmVkIHRvIHNwZW5kIHRoZSBvdXRwdXQuXG4gICAqIE11c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIHRoZSBsZW5ndGggb2YgQWRkcmVzc2VzLlxuICAgKiBAcGFyYW0ge251bWJlcn1cbiAgICovXG4gIHRocmVzaG9sZCh2YWx1ZTogbnVtYmVyKTogdGhpcyB7XG4gICAgdGhpcy52YWxpZGF0ZVRocmVzaG9sZCh2YWx1ZSk7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24uX3RocmVzaG9sZCA9IHZhbHVlO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIExvY2t0aW1lIGlzIGEgbG9uZyB0aGF0IGNvbnRhaW5zIHRoZSB1bml4IHRpbWVzdGFtcCB0aGF0IHRoaXMgb3V0cHV0IGNhbiBiZSBzcGVudCBhZnRlci5cbiAgICogVGhlIHVuaXggdGltZXN0YW1wIGlzIHNwZWNpZmljIHRvIHRoZSBzZWNvbmQuXG4gICAqIEBwYXJhbSB2YWx1ZVxuICAgKi9cbiAgbG9ja3RpbWUodmFsdWU6IHN0cmluZyB8IG51bWJlcik6IHRoaXMge1xuICAgIHRoaXMudmFsaWRhdGVMb2NrdGltZShuZXcgQk4odmFsdWUpKTtcbiAgICB0aGlzLl90cmFuc2FjdGlvbi5fbG9ja3RpbWUgPSBuZXcgQk4odmFsdWUpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIGZyb21QdWJLZXkgaXMgYSBsaXN0IG9mIHVuaXF1ZSBhZGRyZXNzZXMgdGhhdCBjb3JyZXNwb25kIHRvIHRoZSBwcml2YXRlIGtleXMgdGhhdCBjYW4gYmUgdXNlZCB0byBzcGVuZCB0aGlzIG91dHB1dC5cbiAgICogQHBhcmFtIHtzdHJpbmcgfCBzdGlybmdbXX0gc2VuZGVyUHViS2V5XG4gICAqL1xuICBmcm9tUHViS2V5KHNlbmRlclB1YktleTogc3RyaW5nIHwgc3RyaW5nW10pOiB0aGlzIHtcbiAgICBjb25zdCBwdWJLZXlzID0gc2VuZGVyUHViS2V5IGluc3RhbmNlb2YgQXJyYXkgPyBzZW5kZXJQdWJLZXkgOiBbc2VuZGVyUHViS2V5XTtcbiAgICB0aGlzLl90cmFuc2FjdGlvbi5fZnJvbUFkZHJlc3NlcyA9IHB1YktleXMubWFwKHV0aWxzLnBhcnNlQWRkcmVzcyk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogTGlzdCBvZiBVVFhPIHJlcXVpcmVkIGFzIGlucHV0cy5cbiAgICogQSBVVFhPIGlzIGEgc3RhbmRhbG9uZSByZXByZXNlbnRhdGlvbiBvZiBhIHRyYW5zYWN0aW9uIG91dHB1dC5cbiAgICpcbiAgICogQHBhcmFtIHtEZWNvZGVkVXR4b09ialtdfSBsaXN0IG9mIFVUWE9TXG4gICAqL1xuICB1dHhvcyh2YWx1ZTogRGVjb2RlZFV0eG9PYmpbXSk6IHRoaXMge1xuICAgIHRoaXMudmFsaWRhdGVVdHhvcyh2YWx1ZSk7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24uX3V0eG9zID0gdmFsdWU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogR2V0dGVyIGZvciBrbm93IGlmIGJ1aWxkIHNob3VsZCBzaWduXG4gICAqL1xuICBnZXQgaGFzU2lnbmVyKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9zaWduZXIgIT09IHVuZGVmaW5lZCAmJiB0aGlzLl9zaWduZXIubGVuZ3RoID4gMDtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgZ2V0IHRyYW5zYWN0aW9uKCk6IERlcHJlY2F0ZWRUcmFuc2FjdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuX3RyYW5zYWN0aW9uO1xuICB9XG5cbiAgcHJvdGVjdGVkIHNldCB0cmFuc2FjdGlvbih0cmFuc2FjdGlvbjogRGVwcmVjYXRlZFRyYW5zYWN0aW9uKSB7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24gPSB0cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgc2lnbkltcGxlbWVudGF0aW9uKHsga2V5IH06IEJhc2VLZXkpOiBCYXNlVHJhbnNhY3Rpb24ge1xuICAgIHRoaXMuX3NpZ25lci5wdXNoKG5ldyBLZXlQYWlyKHsgcHJ2OiBrZXkgfSkpO1xuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlO1xuXG4gIC8vIGVuZHJlZ2lvblxuICAvLyByZWdpb24gVmFsaWRhdG9yc1xuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZXMgdGhlIHRocmVzaG9sZFxuICAgKiBAcGFyYW0gdGhyZXNob2xkXG4gICAqL1xuICB2YWxpZGF0ZVRocmVzaG9sZCh0aHJlc2hvbGQ6IG51bWJlcik6IHZvaWQge1xuICAgIGlmICghdGhyZXNob2xkIHx8IHRocmVzaG9sZCAhPT0gMikge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCB0cmFuc2FjdGlvbjogdGhyZXNob2xkIG11c3QgYmUgc2V0IHRvIDInKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGVzIGxvY2t0aW1lXG4gICAqIEBwYXJhbSBsb2NrdGltZVxuICAgKi9cbiAgdmFsaWRhdGVMb2NrdGltZShsb2NrdGltZTogQk4pOiB2b2lkIHtcbiAgICBpZiAoIWxvY2t0aW1lIHx8IGxvY2t0aW1lLmx0KG5ldyBCTigwKSkpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgdHJhbnNhY3Rpb246IGxvY2t0aW1lIG11c3QgYmUgMCBvciBoaWdoZXInKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVBZGRyZXNzKGFkZHJlc3M6IEJhc2VBZGRyZXNzLCBhZGRyZXNzRm9ybWF0Pzogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKCF1dGlscy5pc1ZhbGlkQWRkcmVzcyhhZGRyZXNzLmFkZHJlc3MpKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIGFkZHJlc3MnKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVLZXkoeyBrZXkgfTogQmFzZUtleSk6IHZvaWQge1xuICAgIGlmICghbmV3IEtleVBhaXIoeyBwcnY6IGtleSB9KSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCBrZXknKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgdGhlIHJhdyB0cmFuc2FjdGlvbiBoYXMgYSB2YWxpZCBmb3JtYXQgaW4gdGhlIGJsb2NrY2hhaW4gY29udGV4dCwgdGhyb3cgb3RoZXJ3aXNlLlxuICAgKiBJdCBvdmVycmlkZXMgYWJzdHJhY3QgbWV0aG9kIGZyb20gQmFzZVRyYW5zYWN0aW9uQnVpbGRlclxuICAgKlxuICAgKiBAcGFyYW0gcmF3VHJhbnNhY3Rpb24gVHJhbnNhY3Rpb24gaW4gYW55IGZvcm1hdFxuICAgKi9cbiAgdmFsaWRhdGVSYXdUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogdm9pZCB7XG4gICAgdXRpbHMudmFsaWRhdGVSYXdUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbik7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVUcmFuc2FjdGlvbih0cmFuc2FjdGlvbj86IERlcHJlY2F0ZWRUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIC8vIHRocm93IG5ldyBOb3RJbXBsZW1lbnRlZEVycm9yKCd2YWxpZGF0ZVRyYW5zYWN0aW9uIG5vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlVmFsdWUodmFsdWU6IEJpZ051bWJlcik6IHZvaWQge1xuICAgIGlmICh2YWx1ZS5pc0xlc3NUaGFuKDApKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdWYWx1ZSBjYW5ub3QgYmUgbGVzcyB0aGFuIHplcm8nKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgdGhlIGxpc3Qgb2YgVVRYT1MgaXMgZW1wdHkgYW5kIGNoZWNrIGVhY2ggVVRYTy5cbiAgICogQHBhcmFtIHZhbHVlc1xuICAgKi9cbiAgdmFsaWRhdGVVdHhvcyh2YWx1ZXM6IERlY29kZWRVdHhvT2JqW10pOiB2b2lkIHtcbiAgICBpZiAodmFsdWVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcihcIlV0eG9zIGNhbid0IGJlIGVtcHR5IGFycmF5XCIpO1xuICAgIH1cbiAgICB2YWx1ZXMuZm9yRWFjaCh0aGlzLnZhbGlkYXRlVXR4byk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgdGhlIFVUWE8gaGFzIGV4cGVjdGVkIGZpZWxkcy5cbiAgICogQHBhcmFtIFVUWE9cbiAgICovXG4gIHZhbGlkYXRlVXR4byh2YWx1ZTogRGVjb2RlZFV0eG9PYmopOiB2b2lkIHtcbiAgICBbJ291dHB1dElEJywgJ2Ftb3VudCcsICd0eGlkJywgJ291dHB1dGlkeCddLmZvckVhY2goKGZpZWxkKSA9PiB7XG4gICAgICBpZiAoIXZhbHVlLmhhc093blByb3BlcnR5KGZpZWxkKSkgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcihgVXR4b3MgcmVxdWlyZWQgJHtmaWVsZH1gKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayB0aGUgYW1vdW50IGlzIHBvc2l0aXZlLlxuICAgKiBAcGFyYW0gYW1vdW50XG4gICAqL1xuICB2YWxpZGF0ZUFtb3VudChhbW91bnQ6IEJOKTogdm9pZCB7XG4gICAgaWYgKGFtb3VudC5sdGVuKDApKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdBbW91bnQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMCcpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayB0aGUgYnVmZmVyIGhhcyAzMiBieXRlIGxvbmcuXG4gICAqIEBwYXJhbSBjaGFpbklEXG4gICAqL1xuICB2YWxpZGF0ZUNoYWluSWQoY2hhaW5JRDogQnVmZmVyQXZheCk6IHZvaWQge1xuICAgIGlmIChjaGFpbklELmxlbmd0aCAhPT0gMzIpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0NoYWluIGlkIGFyZSAzMiBieXRlIHNpemUnKTtcbiAgICB9XG4gIH1cblxuICAvLyBlbmRyZWdpb25cbn1cbiJdfQ==
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
/// <reference types="bn.js" />
|
|
2
|
-
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
|
|
3
1
|
import { TransactionType } from '@bitgo-beta/sdk-core';
|
|
4
|
-
import {
|
|
2
|
+
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
|
|
5
3
|
import { BN } from 'avalanche';
|
|
6
|
-
import {
|
|
7
|
-
import { Tx, BaseTx, DecodedUtxoObj } from './iface';
|
|
4
|
+
import { ExportTx } from 'avalanche/dist/apis/evm';
|
|
8
5
|
import { AtomicInCTransactionBuilder } from './atomicInCTransactionBuilder';
|
|
6
|
+
import { DeprecatedTransaction } from './deprecatedTransaction';
|
|
7
|
+
import { DecodedUtxoObj, DeprecatedBaseTx, DeprecatedTx } from './iface';
|
|
9
8
|
export declare class ExportInCTxBuilder extends AtomicInCTransactionBuilder {
|
|
10
9
|
private _amount;
|
|
11
10
|
private _nonce;
|
|
@@ -37,16 +36,16 @@ export declare class ExportInCTxBuilder extends AtomicInCTransactionBuilder {
|
|
|
37
36
|
*/
|
|
38
37
|
to(pAddresses: string | string[]): this;
|
|
39
38
|
protected get transactionType(): TransactionType;
|
|
40
|
-
initBuilder(tx:
|
|
41
|
-
static verifyTxType(baseTx:
|
|
42
|
-
verifyTxType(baseTx:
|
|
39
|
+
initBuilder(tx: DeprecatedTx): this;
|
|
40
|
+
static verifyTxType(baseTx: DeprecatedBaseTx): baseTx is ExportTx;
|
|
41
|
+
verifyTxType(baseTx: DeprecatedBaseTx): baseTx is ExportTx;
|
|
43
42
|
/**
|
|
44
43
|
* Build the export in C-chain transaction
|
|
45
44
|
* @protected
|
|
46
45
|
*/
|
|
47
46
|
protected buildAvaxTransaction(): void;
|
|
48
47
|
/** @inheritdoc */
|
|
49
|
-
protected fromImplementation(rawTransaction: string):
|
|
48
|
+
protected fromImplementation(rawTransaction: string): DeprecatedTransaction;
|
|
50
49
|
/**
|
|
51
50
|
* Check the amount is positive.
|
|
52
51
|
* @param amount
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exportInCTxBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/exportInCTxBuilder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"exportInCTxBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/exportInCTxBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuC,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,EAAE,EAAwB,MAAM,WAAW,CAAC;AACrD,OAAO,EAKL,QAAQ,EAKT,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAGzE,qBAAa,kBAAmB,SAAQ,2BAA2B;IACjE,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,MAAM,CAAK;gBAEP,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C;;;;;OAKG;IACH,KAAK,CAAC,KAAK,EAAE,cAAc,EAAE,GAAG,IAAI;IAIpC;;;;;OAKG;IACH,MAAM,CAAC,MAAM,EAAE,EAAE,GAAG,MAAM,GAAG,IAAI;IAOjC;;;;OAIG;IACH,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAOnC;;;;OAIG;IACH,EAAE,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAMvC,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,WAAW,CAAC,EAAE,EAAE,YAAY,GAAG,IAAI;IAgDnC,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,IAAI,QAAQ;IAIjE,YAAY,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,IAAI,QAAQ;IAI1D;;;OAGG;IACH,SAAS,CAAC,oBAAoB,IAAI,IAAI;IA2DtC,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,qBAAqB;IAO3E;;;OAGG;IACH,aAAa,CAAC,KAAK,EAAE,EAAE,GAAG,IAAI;CAK/B"}
|
|
@@ -5,10 +5,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.ExportInCTxBuilder = void 0;
|
|
7
7
|
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
8
|
-
const evm_1 = require("avalanche/dist/apis/evm");
|
|
9
|
-
const utils_1 = __importDefault(require("./utils"));
|
|
10
8
|
const avalanche_1 = require("avalanche");
|
|
9
|
+
const evm_1 = require("avalanche/dist/apis/evm");
|
|
11
10
|
const atomicInCTransactionBuilder_1 = require("./atomicInCTransactionBuilder");
|
|
11
|
+
const utils_1 = __importDefault(require("./utils"));
|
|
12
12
|
class ExportInCTxBuilder extends atomicInCTransactionBuilder_1.AtomicInCTransactionBuilder {
|
|
13
13
|
constructor(_coinConfig) {
|
|
14
14
|
super(_coinConfig);
|
|
@@ -136,7 +136,7 @@ class ExportInCTxBuilder extends atomicInCTransactionBuilder_1.AtomicInCTransact
|
|
|
136
136
|
new evm_1.TransferableOutput(this.transaction._assetId, new evm_1.SECPTransferOutput(this._amount, this.transaction._to, this.transaction._locktime, this.transaction._threshold)),
|
|
137
137
|
])),
|
|
138
138
|
// TODO(BG-56700): Improve canSign by check in addresses in empty credentials match signer
|
|
139
|
-
[evm_1.SelectCredentialClass(input.getCredentialID(), [''].map(utils_1.default.createSig))]));
|
|
139
|
+
[(0, evm_1.SelectCredentialClass)(input.getCredentialID(), [''].map(utils_1.default.createSig))]));
|
|
140
140
|
}
|
|
141
141
|
/** @inheritdoc */
|
|
142
142
|
fromImplementation(rawTransaction) {
|
|
@@ -156,4 +156,4 @@ class ExportInCTxBuilder extends atomicInCTransactionBuilder_1.AtomicInCTransact
|
|
|
156
156
|
}
|
|
157
157
|
}
|
|
158
158
|
exports.ExportInCTxBuilder = ExportInCTxBuilder;
|
|
159
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0SW5DVHhCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9leHBvcnRJbkNUeEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsbURBQTRGO0FBQzVGLGlEQVVpQztBQUNqQyxvREFBNEI7QUFDNUIseUNBQXFEO0FBR3JELCtFQUE0RTtBQUU1RSxNQUFhLGtCQUFtQixTQUFRLHlEQUEyQjtJQUlqRSxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxLQUFLLENBQUMsS0FBdUI7UUFDM0IsTUFBTSxJQUFJLGdDQUFxQixDQUFDLGdEQUFnRCxDQUFDLENBQUM7SUFDcEYsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsTUFBTSxDQUFDLE1BQW1CO1FBQ3hCLE1BQU0sUUFBUSxHQUFHLGNBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxjQUFFLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQztRQUN4QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLEtBQXNCO1FBQzFCLE1BQU0sT0FBTyxHQUFHLElBQUksY0FBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlCLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUM7UUFDdEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEVBQUUsQ0FBQyxVQUE2QjtRQUM5QixNQUFNLE9BQU8sR0FBRyxVQUFVLFlB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Q0QsMkZBQTJGO1FBQzNGLENBQUMsMkJBQXFCLENBQUMsS0FBSyxDQUFDLGVBQWUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLGVBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQzVFLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxrQkFBa0I7SUFDUixrQkFBa0IsQ0FBQyxjQUFzQjtRQUNqRCxNQUFNLEVBQUUsR0FBRyxJQUFJLFFBQUssRUFBRSxDQUFDO1FBQ3ZCLEVBQUUsQ0FBQyxVQUFVLENBQUMsa0JBQVUsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNyQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVEOzs7T0FHRztJQUNILGFBQWEsQ0FBQyxLQUFTO1FBQ3JCLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNoQixNQUFNLElBQUksZ0NBQXFCLENBQUMsdUNBQXVDLENBQUMsQ0FBQztTQUMxRTtJQUNILENBQUM7Q0FDRjtBQWxNRCxnREFrTUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IsIE5vdFN1cHBvcnRlZCwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHtcbiAgRVZNQ29uc3RhbnRzLFxuICBUeCBhcyBFTVZUeCxcbiAgVW5zaWduZWRUeCxcbiAgU2VsZWN0Q3JlZGVudGlhbENsYXNzLFxuICBFeHBvcnRUeCxcbiAgRVZNSW5wdXQsXG4gIFRyYW5zZmVyYWJsZU91dHB1dCxcbiAgU0VDUFRyYW5zZmVyT3V0cHV0LFxuICBBbW91bnRPdXRwdXQsXG59IGZyb20gJ2F2YWxhbmNoZS9kaXN0L2FwaXMvZXZtJztcbmltcG9ydCB1dGlscyBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IEJOLCBCdWZmZXIgYXMgQnVmZmVyQXZheCB9IGZyb20gJ2F2YWxhbmNoZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgVHgsIEJhc2VUeCwgRGVjb2RlZFV0eG9PYmogfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IEF0b21pY0luQ1RyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vYXRvbWljSW5DVHJhbnNhY3Rpb25CdWlsZGVyJztcblxuZXhwb3J0IGNsYXNzIEV4cG9ydEluQ1R4QnVpbGRlciBleHRlbmRzIEF0b21pY0luQ1RyYW5zYWN0aW9uQnVpbGRlciB7XG4gIHByaXZhdGUgX2Ftb3VudDogQk47XG4gIHByaXZhdGUgX25vbmNlOiBCTjtcblxuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gIH1cblxuICAvKipcbiAgICogVXR4b3MgYXJlIG5vdCByZXF1aXJlZCBpbiBFeHBvcnQgVHggaW4gQy1DaGFpbi5cbiAgICogT3ZlcnJpZGUgdXR4b3MgdG8gcHJldmVudCB1c2VkIGJ5IHRocm93aW5nIGEgZXJyb3IuXG4gICAqXG4gICAqIEBwYXJhbSB7RGVjb2RlZFV0eG9PYmpbXX0gdmFsdWUgaWdub3JlZFxuICAgKi9cbiAgdXR4b3ModmFsdWU6IERlY29kZWRVdHhvT2JqW10pOiB0aGlzIHtcbiAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCd1dHhvcyBhcmUgbm90IHJlcXVpcmVkIGluIEV4cG9ydCBUeCBpbiBDLUNoYWluJyk7XG4gIH1cblxuICAvKipcbiAgICogQW1vdW50IGlzIGEgbG9uZyB0aGF0IHNwZWNpZmllcyB0aGUgcXVhbnRpdHkgb2YgdGhlIGFzc2V0IHRoYXQgdGhpcyBvdXRwdXQgb3ducy4gTXVzdCBiZSBwb3NpdGl2ZS5cbiAgICogVGhlIHRyYW5zYWN0aW9uIG91dHB1dCBhbW91bnQgYWRkIGEgZml4ZWQgZmVlIHRoYXQgd2lsbCBiZSBwYWlkIHVwb24gaW1wb3J0LlxuICAgKlxuICAgKiBAcGFyYW0ge0JOIHwgc3RyaW5nfSBhbW91bnQgVGhlIHdpdGhkcmF3YWwgYW1vdW50XG4gICAqL1xuICBhbW91bnQoYW1vdW50OiBCTiB8IHN0cmluZyk6IHRoaXMge1xuICAgIGNvbnN0IGFtb3VudEJOID0gQk4uaXNCTihhbW91bnQpID8gYW1vdW50IDogbmV3IEJOKGFtb3VudCk7XG4gICAgdGhpcy52YWxpZGF0ZUFtb3VudChhbW91bnRCTik7XG4gICAgdGhpcy5fYW1vdW50ID0gYW1vdW50Qk47XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBub25jZSBvZiBDLUNoYWluIHNlbmRlciBhZGRyZXNzXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyIHwgc3RyaW5nfSBub25jZSAtIG51bWJlciB0aGF0IGNhbiBiZSBvbmx5IHVzZWQgb25jZVxuICAgKi9cbiAgbm9uY2Uobm9uY2U6IG51bWJlciB8IHN0cmluZyk6IHRoaXMge1xuICAgIGNvbnN0IG5vbmNlQk4gPSBuZXcgQk4obm9uY2UpO1xuICAgIHRoaXMudmFsaWRhdGVOb25jZShub25jZUJOKTtcbiAgICB0aGlzLl9ub25jZSA9IG5vbmNlQk47XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogRXhwb3J0IHR4IHRhcmdldCBQIHdhbGxldC5cbiAgICpcbiAgICogQHBhcmFtIHBBZGRyZXNzZXNcbiAgICovXG4gIHRvKHBBZGRyZXNzZXM6IHN0cmluZyB8IHN0cmluZ1tdKTogdGhpcyB7XG4gICAgY29uc3QgcHViS2V5cyA9IHBBZGRyZXNzZXMgaW5zdGFuY2VvZiBBcnJheSA/IHBBZGRyZXNzZXMgOiBwQWRkcmVzc2VzLnNwbGl0KCd+Jyk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5fdG8gPSBwdWJLZXlzLm1hcCh1dGlscy5wYXJzZUFkZHJlc3MpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLkV4cG9ydDtcbiAgfVxuXG4gIGluaXRCdWlsZGVyKHR4OiBUeCk6IHRoaXMge1xuICAgIGNvbnN0IGJhc2VUeDogQmFzZVR4ID0gdHguZ2V0VW5zaWduZWRUeCgpLmdldFRyYW5zYWN0aW9uKCk7XG4gICAgaWYgKFxuICAgICAgYmFzZVR4LmdldE5ldHdvcmtJRCgpICE9PSB0aGlzLnRyYW5zYWN0aW9uLl9uZXR3b3JrSUQgfHxcbiAgICAgICFiYXNlVHguZ2V0QmxvY2tjaGFpbklEKCkuZXF1YWxzKHRoaXMudHJhbnNhY3Rpb24uX2Jsb2NrY2hhaW5JRClcbiAgICApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTmV0d29yayBvciBibG9ja2NoYWluIGlzIG5vdCBlcXVhbHMnKTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMudmVyaWZ5VHhUeXBlKGJhc2VUeCkpIHtcbiAgICAgIHRocm93IG5ldyBOb3RTdXBwb3J0ZWQoJ1RyYW5zYWN0aW9uIGNhbm5vdCBiZSBwYXJzZWQgb3IgaGFzIGFuIHVuc3VwcG9ydGVkIHRyYW5zYWN0aW9uIHR5cGUnKTtcbiAgICB9XG5cbiAgICAvLyBUaGUgb3V0cHV0cyBpcyBhIG11bHRpc2lnbiBQLUNoYWluIGFkZHJlc3MgcmVzdWx0LlxuICAgIC8vIEl0J3MgZXhwZWN0ZWQgdG8gaGF2ZSBvbmx5IG9uZSBvdXRwdXRzIHRvIHRoZSBkZXN0aW5hdGlvbiBQLUNoYWluIGFkZHJlc3MuXG4gICAgY29uc3Qgb3V0cHV0cyA9IGJhc2VUeC5nZXRFeHBvcnRlZE91dHB1dHMoKTtcbiAgICBpZiAob3V0cHV0cy5sZW5ndGggIT09IDEpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ1RyYW5zYWN0aW9uIGNhbiBoYXZlIG9uZSBvdXRwdXQnKTtcbiAgICB9XG4gICAgY29uc3Qgb3V0cHV0ID0gb3V0cHV0c1swXTtcblxuICAgIGlmICghb3V0cHV0LmdldEFzc2V0SUQoKS5lcXVhbHModGhpcy50cmFuc2FjdGlvbi5fYXNzZXRJZCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQXNzZXRJRCBhcmUgbm90IGVxdWFscycpO1xuICAgIH1cblxuICAgIC8vIFRoZSBpbnB1dHMgaXMgbm90IGFuIHV0eG8uXG4gICAgLy8gSXQncyBleHBlY3RlZCB0byBoYXZlIG9ubHkgb25lIGlucHV0IGZvcm0gQy1DaGFpbiBhZGRyZXNzLlxuICAgIGNvbnN0IGlucHV0cyA9IGJhc2VUeC5nZXRJbnB1dHMoKTtcbiAgICBpZiAoaW5wdXRzLmxlbmd0aCAhPT0gMSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignVHJhbnNhY3Rpb24gY2FuIGhhdmUgb25lIGlucHV0cycpO1xuICAgIH1cbiAgICBjb25zdCBpbnB1dCA9IGlucHV0c1swXTtcblxuICAgIHRoaXMudHJhbnNhY3Rpb24uX3RvID0gb3V0cHV0LmdldE91dHB1dCgpLmdldEFkZHJlc3NlcygpO1xuICAgIGNvbnN0IGlucHV0QW1vdW50ID0gbmV3IEJOKChpbnB1dCBhcyBhbnkpLmFtb3VudCk7XG4gICAgY29uc3Qgb3V0cHV0QW1vdW50ID0gKG91dHB1dC5nZXRPdXRwdXQoKSBhcyBBbW91bnRPdXRwdXQpLmdldEFtb3VudCgpO1xuICAgIGNvbnN0IGZlZSA9IGlucHV0QW1vdW50LnN1YihvdXRwdXRBbW91bnQpO1xuICAgIHRoaXMuX2Ftb3VudCA9IG91dHB1dEFtb3VudDtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl9mZWUuZmVlUmF0ZSA9IGZlZS50b051bWJlcigpIC0gTnVtYmVyKHRoaXMuZml4ZWRGZWUpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX2ZlZS5mZWUgPSBmZWUudG9TdHJpbmcoKTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl9mZWUuc2l6ZSA9IDE7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5fZnJvbUFkZHJlc3NlcyA9IFtpbnB1dC5nZXRBZGRyZXNzKCldO1xuXG4gICAgdGhpcy5fbm9uY2UgPSBuZXcgQk4oKGlucHV0IGFzIGFueSkubm9uY2UpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uc2V0VHJhbnNhY3Rpb24odHgpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgc3RhdGljIHZlcmlmeVR4VHlwZShiYXNlVHg6IEJhc2VUeCk6IGJhc2VUeCBpcyBFeHBvcnRUeCB7XG4gICAgcmV0dXJuIGJhc2VUeC5nZXRUeXBlSUQoKSA9PT0gRVZNQ29uc3RhbnRzLkVYUE9SVFRYO1xuICB9XG5cbiAgdmVyaWZ5VHhUeXBlKGJhc2VUeDogQmFzZVR4KTogYmFzZVR4IGlzIEV4cG9ydFR4IHtcbiAgICByZXR1cm4gRXhwb3J0SW5DVHhCdWlsZGVyLnZlcmlmeVR4VHlwZShiYXNlVHgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkIHRoZSBleHBvcnQgaW4gQy1jaGFpbiB0cmFuc2FjdGlvblxuICAgKiBAcHJvdGVjdGVkXG4gICAqL1xuICBwcm90ZWN0ZWQgYnVpbGRBdmF4VHJhbnNhY3Rpb24oKTogdm9pZCB7XG4gICAgLy8gaWYgdHggaGFzIGNyZWRlbnRpYWxzLCB0eCBzaG91bGRuJ3QgY2hhbmdlXG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb24uaGFzQ3JlZGVudGlhbHMpIHJldHVybjtcbiAgICBpZiAodGhpcy5fYW1vdW50ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignYW1vdW50IGlzIHJlcXVpcmVkJyk7XG4gICAgfVxuICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uLl9mcm9tQWRkcmVzc2VzLmxlbmd0aCAhPT0gMSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdzZW5kZXIgaXMgb25lIGFuZCByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBpZiAodGhpcy50cmFuc2FjdGlvbi5fdG8ubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ3RvIGlzIHJlcXVpcmVkJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy50cmFuc2FjdGlvbi5fZmVlLmZlZVJhdGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignZmVlIHJhdGUgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLl9ub25jZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ25vbmNlIGlzIHJlcXVpcmVkJyk7XG4gICAgfVxuICAgIGNvbnN0IHR4RmVlID0gTnVtYmVyKHRoaXMuZml4ZWRGZWUpO1xuXG4gICAgY29uc3QgZmVlOiBudW1iZXIgPSB0aGlzLnRyYW5zYWN0aW9uLl9mZWUuZmVlUmF0ZSArIHR4RmVlO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX2ZlZS5mZWUgPSBmZWUudG9TdHJpbmcoKTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl9mZWUuc2l6ZSA9IDE7XG5cbiAgICBjb25zdCBpbnB1dCA9IG5ldyBFVk1JbnB1dChcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXNbMF0sXG4gICAgICB0aGlzLl9hbW91bnQuYWRkbihmZWUpLFxuICAgICAgdGhpcy50cmFuc2FjdGlvbi5fYXNzZXRJZCxcbiAgICAgIHRoaXMuX25vbmNlXG4gICAgKTtcbiAgICBpbnB1dC5hZGRTaWduYXR1cmVJZHgoMCwgdGhpcy50cmFuc2FjdGlvbi5fZnJvbUFkZHJlc3Nlc1swXSk7XG5cbiAgICB0aGlzLnRyYW5zYWN0aW9uLnNldFRyYW5zYWN0aW9uKFxuICAgICAgbmV3IEVNVlR4KFxuICAgICAgICBuZXcgVW5zaWduZWRUeChcbiAgICAgICAgICBuZXcgRXhwb3J0VHgoXG4gICAgICAgICAgICB0aGlzLnRyYW5zYWN0aW9uLl9uZXR3b3JrSUQsXG4gICAgICAgICAgICB0aGlzLnRyYW5zYWN0aW9uLl9ibG9ja2NoYWluSUQsXG4gICAgICAgICAgICB0aGlzLl9leHRlcm5hbENoYWluSWQsXG4gICAgICAgICAgICBbaW5wdXRdLFxuICAgICAgICAgICAgW1xuICAgICAgICAgICAgICBuZXcgVHJhbnNmZXJhYmxlT3V0cHV0KFxuICAgICAgICAgICAgICAgIHRoaXMudHJhbnNhY3Rpb24uX2Fzc2V0SWQsXG4gICAgICAgICAgICAgICAgbmV3IFNFQ1BUcmFuc2Zlck91dHB1dChcbiAgICAgICAgICAgICAgICAgIHRoaXMuX2Ftb3VudCxcbiAgICAgICAgICAgICAgICAgIHRoaXMudHJhbnNhY3Rpb24uX3RvLFxuICAgICAgICAgICAgICAgICAgdGhpcy50cmFuc2FjdGlvbi5fbG9ja3RpbWUsXG4gICAgICAgICAgICAgICAgICB0aGlzLnRyYW5zYWN0aW9uLl90aHJlc2hvbGRcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICBdXG4gICAgICAgICAgKVxuICAgICAgICApLFxuICAgICAgICAvLyBUT0RPKEJHLTU2NzAwKTogIEltcHJvdmUgY2FuU2lnbiBieSBjaGVjayBpbiBhZGRyZXNzZXMgaW4gZW1wdHkgY3JlZGVudGlhbHMgbWF0Y2ggc2lnbmVyXG4gICAgICAgIFtTZWxlY3RDcmVkZW50aWFsQ2xhc3MoaW5wdXQuZ2V0Q3JlZGVudGlhbElEKCksIFsnJ10ubWFwKHV0aWxzLmNyZWF0ZVNpZykpXVxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGZyb21JbXBsZW1lbnRhdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IHR4ID0gbmV3IEVNVlR4KCk7XG4gICAgdHguZnJvbUJ1ZmZlcihCdWZmZXJBdmF4LmZyb20ocmF3VHJhbnNhY3Rpb24sICdoZXgnKSk7XG4gICAgdGhpcy5pbml0QnVpbGRlcih0eCk7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb247XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgdGhlIGFtb3VudCBpcyBwb3NpdGl2ZS5cbiAgICogQHBhcmFtIGFtb3VudFxuICAgKi9cbiAgdmFsaWRhdGVOb25jZShub25jZTogQk4pOiB2b2lkIHtcbiAgICBpZiAobm9uY2UubHRuKDApKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdOb25jZSBtdXN0IGJlIGdyZWF0ZXIgb3IgZXF1YWwgdGhhbiAwJyk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
159
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0SW5DVHhCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9leHBvcnRJbkNUeEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsbURBQTRGO0FBRTVGLHlDQUFxRDtBQUNyRCxpREFVaUM7QUFDakMsK0VBQTRFO0FBRzVFLG9EQUE0QjtBQUU1QixNQUFhLGtCQUFtQixTQUFRLHlEQUEyQjtJQUlqRSxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxLQUFLLENBQUMsS0FBdUI7UUFDM0IsTUFBTSxJQUFJLGdDQUFxQixDQUFDLGdEQUFnRCxDQUFDLENBQUM7SUFDcEYsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsTUFBTSxDQUFDLE1BQW1CO1FBQ3hCLE1BQU0sUUFBUSxHQUFHLGNBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxjQUFFLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQztRQUN4QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLEtBQXNCO1FBQzFCLE1BQU0sT0FBTyxHQUFHLElBQUksY0FBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlCLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUM7UUFDdEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEVBQUUsQ0FBQyxVQUE2QjtRQUM5QixNQUFNLE9BQU8sR0FBRyxVQUFVLFlB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QUFXLENBQUMsR0FBRyxFQUNwQixJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQzVCLENBQ0Y7U0FDRixDQUNGLENBQ0Y7UUFDRCwyRkFBMkY7UUFDM0YsQ0FBQyxJQUFBLDJCQUFxQixFQUFDLEtBQUssQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxlQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUM1RSxDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsa0JBQWtCO0lBQ1Isa0JBQWtCLENBQUMsY0FBc0I7UUFDakQsTUFBTSxFQUFFLEdBQUcsSUFBSSxRQUFLLEVBQUUsQ0FBQztRQUN2QixFQUFFLENBQUMsVUFBVSxDQUFDLGtCQUFVLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDckIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxhQUFhLENBQUMsS0FBUztRQUNyQixJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNqQixNQUFNLElBQUksZ0NBQXFCLENBQUMsdUNBQXVDLENBQUMsQ0FBQztRQUMzRSxDQUFDO0lBQ0gsQ0FBQztDQUNGO0FBbE1ELGdEQWtNQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJ1aWxkVHJhbnNhY3Rpb25FcnJvciwgTm90U3VwcG9ydGVkLCBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBCTiwgQnVmZmVyIGFzIEJ1ZmZlckF2YXggfSBmcm9tICdhdmFsYW5jaGUnO1xuaW1wb3J0IHtcbiAgQW1vdW50T3V0cHV0LFxuICBFVk1Db25zdGFudHMsXG4gIEVWTUlucHV0LFxuICBUeCBhcyBFVk1UeCxcbiAgRXhwb3J0VHgsXG4gIFNFQ1BUcmFuc2Zlck91dHB1dCxcbiAgU2VsZWN0Q3JlZGVudGlhbENsYXNzLFxuICBUcmFuc2ZlcmFibGVPdXRwdXQsXG4gIFVuc2lnbmVkVHgsXG59IGZyb20gJ2F2YWxhbmNoZS9kaXN0L2FwaXMvZXZtJztcbmltcG9ydCB7IEF0b21pY0luQ1RyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vYXRvbWljSW5DVHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB7IERlcHJlY2F0ZWRUcmFuc2FjdGlvbiB9IGZyb20gJy4vZGVwcmVjYXRlZFRyYW5zYWN0aW9uJztcbmltcG9ydCB7IERlY29kZWRVdHhvT2JqLCBEZXByZWNhdGVkQmFzZVR4LCBEZXByZWNhdGVkVHggfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB1dGlscyBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNsYXNzIEV4cG9ydEluQ1R4QnVpbGRlciBleHRlbmRzIEF0b21pY0luQ1RyYW5zYWN0aW9uQnVpbGRlciB7XG4gIHByaXZhdGUgX2Ftb3VudDogQk47XG4gIHByaXZhdGUgX25vbmNlOiBCTjtcblxuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gIH1cblxuICAvKipcbiAgICogVXR4b3MgYXJlIG5vdCByZXF1aXJlZCBpbiBFeHBvcnQgVHggaW4gQy1DaGFpbi5cbiAgICogT3ZlcnJpZGUgdXR4b3MgdG8gcHJldmVudCB1c2VkIGJ5IHRocm93aW5nIGEgZXJyb3IuXG4gICAqXG4gICAqIEBwYXJhbSB7RGVjb2RlZFV0eG9PYmpbXX0gdmFsdWUgaWdub3JlZFxuICAgKi9cbiAgdXR4b3ModmFsdWU6IERlY29kZWRVdHhvT2JqW10pOiB0aGlzIHtcbiAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCd1dHhvcyBhcmUgbm90IHJlcXVpcmVkIGluIEV4cG9ydCBUeCBpbiBDLUNoYWluJyk7XG4gIH1cblxuICAvKipcbiAgICogQW1vdW50IGlzIGEgbG9uZyB0aGF0IHNwZWNpZmllcyB0aGUgcXVhbnRpdHkgb2YgdGhlIGFzc2V0IHRoYXQgdGhpcyBvdXRwdXQgb3ducy4gTXVzdCBiZSBwb3NpdGl2ZS5cbiAgICogVGhlIHRyYW5zYWN0aW9uIG91dHB1dCBhbW91bnQgYWRkIGEgZml4ZWQgZmVlIHRoYXQgd2lsbCBiZSBwYWlkIHVwb24gaW1wb3J0LlxuICAgKlxuICAgKiBAcGFyYW0ge0JOIHwgc3RyaW5nfSBhbW91bnQgVGhlIHdpdGhkcmF3YWwgYW1vdW50XG4gICAqL1xuICBhbW91bnQoYW1vdW50OiBCTiB8IHN0cmluZyk6IHRoaXMge1xuICAgIGNvbnN0IGFtb3VudEJOID0gQk4uaXNCTihhbW91bnQpID8gYW1vdW50IDogbmV3IEJOKGFtb3VudCk7XG4gICAgdGhpcy52YWxpZGF0ZUFtb3VudChhbW91bnRCTik7XG4gICAgdGhpcy5fYW1vdW50ID0gYW1vdW50Qk47XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBub25jZSBvZiBDLUNoYWluIHNlbmRlciBhZGRyZXNzXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyIHwgc3RyaW5nfSBub25jZSAtIG51bWJlciB0aGF0IGNhbiBiZSBvbmx5IHVzZWQgb25jZVxuICAgKi9cbiAgbm9uY2Uobm9uY2U6IG51bWJlciB8IHN0cmluZyk6IHRoaXMge1xuICAgIGNvbnN0IG5vbmNlQk4gPSBuZXcgQk4obm9uY2UpO1xuICAgIHRoaXMudmFsaWRhdGVOb25jZShub25jZUJOKTtcbiAgICB0aGlzLl9ub25jZSA9IG5vbmNlQk47XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogRXhwb3J0IHR4IHRhcmdldCBQIHdhbGxldC5cbiAgICpcbiAgICogQHBhcmFtIHBBZGRyZXNzZXNcbiAgICovXG4gIHRvKHBBZGRyZXNzZXM6IHN0cmluZyB8IHN0cmluZ1tdKTogdGhpcyB7XG4gICAgY29uc3QgcHViS2V5cyA9IHBBZGRyZXNzZXMgaW5zdGFuY2VvZiBBcnJheSA/IHBBZGRyZXNzZXMgOiBwQWRkcmVzc2VzLnNwbGl0KCd+Jyk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5fdG8gPSBwdWJLZXlzLm1hcCh1dGlscy5wYXJzZUFkZHJlc3MpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLkV4cG9ydDtcbiAgfVxuXG4gIGluaXRCdWlsZGVyKHR4OiBEZXByZWNhdGVkVHgpOiB0aGlzIHtcbiAgICBjb25zdCBiYXNlVHg6IERlcHJlY2F0ZWRCYXNlVHggPSB0eC5nZXRVbnNpZ25lZFR4KCkuZ2V0VHJhbnNhY3Rpb24oKTtcbiAgICBpZiAoXG4gICAgICBiYXNlVHguZ2V0TmV0d29ya0lEKCkgIT09IHRoaXMudHJhbnNhY3Rpb24uX25ldHdvcmtJRCB8fFxuICAgICAgIWJhc2VUeC5nZXRCbG9ja2NoYWluSUQoKS5lcXVhbHModGhpcy50cmFuc2FjdGlvbi5fYmxvY2tjaGFpbklEKVxuICAgICkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdOZXR3b3JrIG9yIGJsb2NrY2hhaW4gaXMgbm90IGVxdWFscycpO1xuICAgIH1cblxuICAgIGlmICghdGhpcy52ZXJpZnlUeFR5cGUoYmFzZVR4KSkge1xuICAgICAgdGhyb3cgbmV3IE5vdFN1cHBvcnRlZCgnVHJhbnNhY3Rpb24gY2Fubm90IGJlIHBhcnNlZCBvciBoYXMgYW4gdW5zdXBwb3J0ZWQgdHJhbnNhY3Rpb24gdHlwZScpO1xuICAgIH1cblxuICAgIC8vIFRoZSBvdXRwdXRzIGlzIGEgbXVsdGlzaWduIFAtQ2hhaW4gYWRkcmVzcyByZXN1bHQuXG4gICAgLy8gSXQncyBleHBlY3RlZCB0byBoYXZlIG9ubHkgb25lIG91dHB1dHMgdG8gdGhlIGRlc3RpbmF0aW9uIFAtQ2hhaW4gYWRkcmVzcy5cbiAgICBjb25zdCBvdXRwdXRzID0gYmFzZVR4LmdldEV4cG9ydGVkT3V0cHV0cygpO1xuICAgIGlmIChvdXRwdXRzLmxlbmd0aCAhPT0gMSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignVHJhbnNhY3Rpb24gY2FuIGhhdmUgb25lIG91dHB1dCcpO1xuICAgIH1cbiAgICBjb25zdCBvdXRwdXQgPSBvdXRwdXRzWzBdO1xuXG4gICAgaWYgKCFvdXRwdXQuZ2V0QXNzZXRJRCgpLmVxdWFscyh0aGlzLnRyYW5zYWN0aW9uLl9hc3NldElkKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdBc3NldElEIGFyZSBub3QgZXF1YWxzJyk7XG4gICAgfVxuXG4gICAgLy8gVGhlIGlucHV0cyBpcyBub3QgYW4gdXR4by5cbiAgICAvLyBJdCdzIGV4cGVjdGVkIHRvIGhhdmUgb25seSBvbmUgaW5wdXQgZm9ybSBDLUNoYWluIGFkZHJlc3MuXG4gICAgY29uc3QgaW5wdXRzID0gYmFzZVR4LmdldElucHV0cygpO1xuICAgIGlmIChpbnB1dHMubGVuZ3RoICE9PSAxKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdUcmFuc2FjdGlvbiBjYW4gaGF2ZSBvbmUgaW5wdXRzJyk7XG4gICAgfVxuICAgIGNvbnN0IGlucHV0ID0gaW5wdXRzWzBdO1xuXG4gICAgdGhpcy50cmFuc2FjdGlvbi5fdG8gPSBvdXRwdXQuZ2V0T3V0cHV0KCkuZ2V0QWRkcmVzc2VzKCk7XG4gICAgY29uc3QgaW5wdXRBbW91bnQgPSBuZXcgQk4oKGlucHV0IGFzIGFueSkuYW1vdW50KTtcbiAgICBjb25zdCBvdXRwdXRBbW91bnQgPSAob3V0cHV0LmdldE91dHB1dCgpIGFzIEFtb3VudE91dHB1dCkuZ2V0QW1vdW50KCk7XG4gICAgY29uc3QgZmVlID0gaW5wdXRBbW91bnQuc3ViKG91dHB1dEFtb3VudCk7XG4gICAgdGhpcy5fYW1vdW50ID0gb3V0cHV0QW1vdW50O1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX2ZlZS5mZWVSYXRlID0gZmVlLnRvTnVtYmVyKCkgLSBOdW1iZXIodGhpcy5maXhlZEZlZSk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5fZmVlLmZlZSA9IGZlZS50b1N0cmluZygpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX2ZlZS5zaXplID0gMTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl9mcm9tQWRkcmVzc2VzID0gW2lucHV0LmdldEFkZHJlc3MoKV07XG5cbiAgICB0aGlzLl9ub25jZSA9IG5ldyBCTigoaW5wdXQgYXMgYW55KS5ub25jZSk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5zZXRUcmFuc2FjdGlvbih0eCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBzdGF0aWMgdmVyaWZ5VHhUeXBlKGJhc2VUeDogRGVwcmVjYXRlZEJhc2VUeCk6IGJhc2VUeCBpcyBFeHBvcnRUeCB7XG4gICAgcmV0dXJuIGJhc2VUeC5nZXRUeXBlSUQoKSA9PT0gRVZNQ29uc3RhbnRzLkVYUE9SVFRYO1xuICB9XG5cbiAgdmVyaWZ5VHhUeXBlKGJhc2VUeDogRGVwcmVjYXRlZEJhc2VUeCk6IGJhc2VUeCBpcyBFeHBvcnRUeCB7XG4gICAgcmV0dXJuIEV4cG9ydEluQ1R4QnVpbGRlci52ZXJpZnlUeFR5cGUoYmFzZVR4KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZCB0aGUgZXhwb3J0IGluIEMtY2hhaW4gdHJhbnNhY3Rpb25cbiAgICogQHByb3RlY3RlZFxuICAgKi9cbiAgcHJvdGVjdGVkIGJ1aWxkQXZheFRyYW5zYWN0aW9uKCk6IHZvaWQge1xuICAgIC8vIGlmIHR4IGhhcyBjcmVkZW50aWFscywgdHggc2hvdWxkbid0IGNoYW5nZVxuICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uLmhhc0NyZWRlbnRpYWxzKSByZXR1cm47XG4gICAgaWYgKHRoaXMuX2Ftb3VudCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2Ftb3VudCBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBpZiAodGhpcy50cmFuc2FjdGlvbi5fZnJvbUFkZHJlc3Nlcy5sZW5ndGggIT09IDEpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignc2VuZGVyIGlzIG9uZSBhbmQgcmVxdWlyZWQnKTtcbiAgICB9XG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb24uX3RvLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCd0byBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBpZiAoIXRoaXMudHJhbnNhY3Rpb24uX2ZlZS5mZWVSYXRlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2ZlZSByYXRlIGlzIHJlcXVpcmVkJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy5fbm9uY2UgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdub25jZSBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgICBjb25zdCB0eEZlZSA9IE51bWJlcih0aGlzLmZpeGVkRmVlKTtcblxuICAgIGNvbnN0IGZlZTogbnVtYmVyID0gdGhpcy50cmFuc2FjdGlvbi5fZmVlLmZlZVJhdGUgKyB0eEZlZTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl9mZWUuZmVlID0gZmVlLnRvU3RyaW5nKCk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5fZmVlLnNpemUgPSAxO1xuXG4gICAgY29uc3QgaW5wdXQgPSBuZXcgRVZNSW5wdXQoXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLl9mcm9tQWRkcmVzc2VzWzBdLFxuICAgICAgdGhpcy5fYW1vdW50LmFkZG4oZmVlKSxcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uX2Fzc2V0SWQsXG4gICAgICB0aGlzLl9ub25jZVxuICAgICk7XG4gICAgaW5wdXQuYWRkU2lnbmF0dXJlSWR4KDAsIHRoaXMudHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXNbMF0pO1xuXG4gICAgdGhpcy50cmFuc2FjdGlvbi5zZXRUcmFuc2FjdGlvbihcbiAgICAgIG5ldyBFVk1UeChcbiAgICAgICAgbmV3IFVuc2lnbmVkVHgoXG4gICAgICAgICAgbmV3IEV4cG9ydFR4KFxuICAgICAgICAgICAgdGhpcy50cmFuc2FjdGlvbi5fbmV0d29ya0lELFxuICAgICAgICAgICAgdGhpcy50cmFuc2FjdGlvbi5fYmxvY2tjaGFpbklELFxuICAgICAgICAgICAgdGhpcy5fZXh0ZXJuYWxDaGFpbklkLFxuICAgICAgICAgICAgW2lucHV0XSxcbiAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgbmV3IFRyYW5zZmVyYWJsZU91dHB1dChcbiAgICAgICAgICAgICAgICB0aGlzLnRyYW5zYWN0aW9uLl9hc3NldElkLFxuICAgICAgICAgICAgICAgIG5ldyBTRUNQVHJhbnNmZXJPdXRwdXQoXG4gICAgICAgICAgICAgICAgICB0aGlzLl9hbW91bnQsXG4gICAgICAgICAgICAgICAgICB0aGlzLnRyYW5zYWN0aW9uLl90byxcbiAgICAgICAgICAgICAgICAgIHRoaXMudHJhbnNhY3Rpb24uX2xvY2t0aW1lLFxuICAgICAgICAgICAgICAgICAgdGhpcy50cmFuc2FjdGlvbi5fdGhyZXNob2xkXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgXVxuICAgICAgICAgIClcbiAgICAgICAgKSxcbiAgICAgICAgLy8gVE9ETyhCRy01NjcwMCk6ICBJbXByb3ZlIGNhblNpZ24gYnkgY2hlY2sgaW4gYWRkcmVzc2VzIGluIGVtcHR5IGNyZWRlbnRpYWxzIG1hdGNoIHNpZ25lclxuICAgICAgICBbU2VsZWN0Q3JlZGVudGlhbENsYXNzKGlucHV0LmdldENyZWRlbnRpYWxJRCgpLCBbJyddLm1hcCh1dGlscy5jcmVhdGVTaWcpKV1cbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBmcm9tSW1wbGVtZW50YXRpb24ocmF3VHJhbnNhY3Rpb246IHN0cmluZyk6IERlcHJlY2F0ZWRUcmFuc2FjdGlvbiB7XG4gICAgY29uc3QgdHggPSBuZXcgRVZNVHgoKTtcbiAgICB0eC5mcm9tQnVmZmVyKEJ1ZmZlckF2YXguZnJvbShyYXdUcmFuc2FjdGlvbiwgJ2hleCcpKTtcbiAgICB0aGlzLmluaXRCdWlsZGVyKHR4KTtcbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayB0aGUgYW1vdW50IGlzIHBvc2l0aXZlLlxuICAgKiBAcGFyYW0gYW1vdW50XG4gICAqL1xuICB2YWxpZGF0ZU5vbmNlKG5vbmNlOiBCTik6IHZvaWQge1xuICAgIGlmIChub25jZS5sdG4oMCkpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ05vbmNlIG11c3QgYmUgZ3JlYXRlciBvciBlcXVhbCB0aGFuIDAnKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
/// <reference types="bn.js" />
|
|
2
1
|
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
|
|
3
2
|
import { TransactionType } from '@bitgo-beta/sdk-core';
|
|
4
3
|
import { AtomicTransactionBuilder } from './atomicTransactionBuilder';
|
|
5
4
|
import { ExportTx, TransferableOutput } from 'avalanche/dist/apis/platformvm';
|
|
6
5
|
import { BN } from 'avalanche';
|
|
7
|
-
import {
|
|
6
|
+
import { DeprecatedTx, DeprecatedBaseTx } from './iface';
|
|
8
7
|
export declare class ExportTxBuilder extends AtomicTransactionBuilder {
|
|
9
8
|
private _amount;
|
|
10
9
|
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
@@ -16,9 +15,9 @@ export declare class ExportTxBuilder extends AtomicTransactionBuilder {
|
|
|
16
15
|
*/
|
|
17
16
|
amount(value: BN | string): this;
|
|
18
17
|
/** @inheritdoc */
|
|
19
|
-
initBuilder(tx:
|
|
20
|
-
static verifyTxType(baseTx:
|
|
21
|
-
verifyTxType(baseTx:
|
|
18
|
+
initBuilder(tx: DeprecatedTx): this;
|
|
19
|
+
static verifyTxType(baseTx: DeprecatedBaseTx): baseTx is ExportTx;
|
|
20
|
+
verifyTxType(baseTx: DeprecatedBaseTx): baseTx is ExportTx;
|
|
22
21
|
/**
|
|
23
22
|
* Create the internal avalanche transaction.
|
|
24
23
|
* @protected
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exportTxBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/exportTxBuilder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"exportTxBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/exportTxBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAuC,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EACL,QAAQ,EAGR,kBAAkB,EAGnB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAI/B,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEzD,qBAAa,eAAgB,SAAQ,wBAAwB;IAC3D,OAAO,CAAC,OAAO,CAAK;gBAER,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,EAAE,GAAG,MAAM,GAAG,IAAI;IAOhC,kBAAkB;IAClB,WAAW,CAAC,EAAE,EAAE,YAAY,GAAG,IAAI;IA2BnC,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,IAAI,QAAQ;IAIjE,YAAY,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,IAAI,QAAQ;IAI1D;;;OAGG;IACH,SAAS,CAAC,oBAAoB,IAAI,IAAI;IAsBtC;;;;OAIG;IACH,SAAS,CAAC,eAAe,IAAI,kBAAkB,EAAE;CAalD"}
|
|
@@ -53,7 +53,7 @@ class ExportTxBuilder extends atomicTransactionBuilder_1.AtomicTransactionBuilde
|
|
|
53
53
|
this.transaction._fromAddresses = secpOut.getAddresses();
|
|
54
54
|
this._externalChainId = baseTx.getDestinationChain();
|
|
55
55
|
this._amount = secpOut.getAmount();
|
|
56
|
-
this.transaction._utxos = utxoEngine_1.
|
|
56
|
+
this.transaction._utxos = (0, utxoEngine_1.deprecatedRecoverUtxos)(baseTx.getIns());
|
|
57
57
|
return this;
|
|
58
58
|
}
|
|
59
59
|
static verifyTxType(baseTx) {
|
|
@@ -71,7 +71,7 @@ class ExportTxBuilder extends atomicTransactionBuilder_1.AtomicTransactionBuilde
|
|
|
71
71
|
if (this.transaction.hasCredentials)
|
|
72
72
|
return;
|
|
73
73
|
const { inputs, outputs, credentials } = this.createInputOutput(this._amount.add(new avalanche_1.BN(this.transaction.fee.fee)));
|
|
74
|
-
this.transaction.setTransaction(new platformvm_1.Tx(new platformvm_1.UnsignedTx(new platformvm_1.ExportTx(this.transaction._networkID, this.transaction._blockchainID, outputs, inputs,
|
|
74
|
+
this.transaction.setTransaction(new platformvm_1.Tx(new platformvm_1.UnsignedTx(new platformvm_1.ExportTx(this.transaction._networkID, this.transaction._blockchainID, outputs, inputs, undefined, this._externalChainId, this.exportedOutputs())), credentials));
|
|
75
75
|
}
|
|
76
76
|
/**
|
|
77
77
|
* Create the ExportedOut where the recipient address are the sender.
|
|
@@ -85,4 +85,4 @@ class ExportTxBuilder extends atomicTransactionBuilder_1.AtomicTransactionBuilde
|
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
87
|
exports.ExportTxBuilder = ExportTxBuilder;
|
|
88
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0VHhCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9leHBvcnRUeEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsbURBQTRGO0FBQzVGLHlFQUFzRTtBQUN0RSwrREFPd0M7QUFDeEMseUNBQStCO0FBRS9CLG9EQUE0QjtBQUM1Qiw2Q0FBc0Q7QUFHdEQsTUFBYSxlQUFnQixTQUFRLG1EQUF3QjtJQUczRCxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsZUFBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3pGLENBQUM7SUFFRCxJQUFjLGVBQWU7UUFDM0IsT0FBTywwQkFBZSxDQUFDLE1BQU0sQ0FBQztJQUNoQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxLQUFrQjtRQUN2QixNQUFNLE9BQU8sR0FBRyxjQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksY0FBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLFdBQVcsQ0FBQyxFQUFnQjtRQUMxQixLQUFLLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3RCLE1BQU0sTUFBTSxHQUFxQixFQUFFLENBQUMsYUFBYSxFQUFFLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDckUsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUs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QUM1QixDQUNGO1NBQ0YsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQXhHRCwwQ0F3R0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IsIE5vdFN1cHBvcnRlZCwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgQXRvbWljVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi9hdG9taWNUcmFuc2FjdGlvbkJ1aWxkZXInO1xuaW1wb3J0IHtcbiAgRXhwb3J0VHgsXG4gIFBsYXRmb3JtVk1Db25zdGFudHMsXG4gIFNFQ1BUcmFuc2Zlck91dHB1dCxcbiAgVHJhbnNmZXJhYmxlT3V0cHV0LFxuICBUeCBhcyBQVk1UeCxcbiAgVW5zaWduZWRUeCxcbn0gZnJvbSAnYXZhbGFuY2hlL2Rpc3QvYXBpcy9wbGF0Zm9ybXZtJztcbmltcG9ydCB7IEJOIH0gZnJvbSAnYXZhbGFuY2hlJztcbmltcG9ydCB7IEFtb3VudE91dHB1dCB9IGZyb20gJ2F2YWxhbmNoZS9kaXN0L2FwaXMvZXZtL291dHB1dHMnO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgZGVwcmVjYXRlZFJlY292ZXJVdHhvcyB9IGZyb20gJy4vdXR4b0VuZ2luZSc7XG5pbXBvcnQgeyBEZXByZWNhdGVkVHgsIERlcHJlY2F0ZWRCYXNlVHggfSBmcm9tICcuL2lmYWNlJztcblxuZXhwb3J0IGNsYXNzIEV4cG9ydFR4QnVpbGRlciBleHRlbmRzIEF0b21pY1RyYW5zYWN0aW9uQnVpbGRlciB7XG4gIHByaXZhdGUgX2Ftb3VudDogQk47XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIHRoaXMuX2V4dGVybmFsQ2hhaW5JZCA9IHV0aWxzLmNiNThEZWNvZGUodGhpcy50cmFuc2FjdGlvbi5fbmV0d29yay5jQ2hhaW5CbG9ja2NoYWluSUQpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLkV4cG9ydDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBbW91bnQgaXMgYSBsb25nIHRoYXQgc3BlY2lmaWVzIHRoZSBxdWFudGl0eSBvZiB0aGUgYXNzZXQgdGhhdCB0aGlzIG91dHB1dCBvd25zLiBNdXN0IGJlIHBvc2l0aXZlLlxuICAgKlxuICAgKiBAcGFyYW0ge0JOIHwgc3RyaW5nfSBhbW91bnQgVGhlIHdpdGhkcmF3YWwgYW1vdW50XG4gICAqL1xuICBhbW91bnQodmFsdWU6IEJOIHwgc3RyaW5nKTogdGhpcyB7XG4gICAgY29uc3QgdmFsdWVCTiA9IEJOLmlzQk4odmFsdWUpID8gdmFsdWUgOiBuZXcgQk4odmFsdWUpO1xuICAgIHRoaXMudmFsaWRhdGVBbW91bnQodmFsdWVCTik7XG4gICAgdGhpcy5fYW1vdW50ID0gdmFsdWVCTjtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpbml0QnVpbGRlcih0eDogRGVwcmVjYXRlZFR4KTogdGhpcyB7XG4gICAgc3VwZXIuaW5pdEJ1aWxkZXIodHgpO1xuICAgIGNvbnN0IGJhc2VUeDogRGVwcmVjYXRlZEJhc2VUeCA9IHR4LmdldFVuc2lnbmVkVHgoKS5nZXRUcmFuc2FjdGlvbigpO1xuICAgIGlmICghdGhpcy52ZXJpZnlUeFR5cGUoYmFzZVR4KSkge1xuICAgICAgdGhyb3cgbmV3IE5vdFN1cHBvcnRlZCgnVHJhbnNhY3Rpb24gY2Fubm90IGJlIHBhcnNlZCBvciBoYXMgYW4gdW5zdXBwb3J0ZWQgdHJhbnNhY3Rpb24gdHlwZScpO1xuICAgIH1cbiAgICAvLyBUaGUgRXhwb3J0T3V0cHV0cyBpcyBhIHtAbGluayBleHBvcnRlZE91dHB1dHN9IHJlc3VsdC5cbiAgICAvLyBJdCdzIGV4cGVjdGVkIHRvIGhhdmUgb25seSBvbmUgb3V0cHV0cyB3aXRoIHRoZSBhZGRyZXNzZXMgb2YgdGhlIHNlbmRlci5cbiAgICBjb25zdCBvdXRwdXRzID0gYmFzZVR4LmdldEV4cG9ydE91dHB1dHMoKTtcbiAgICBpZiAob3V0cHV0cy5sZW5ndGggIT0gMSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignVHJhbnNhY3Rpb24gY2FuIGhhdmUgb25lIGV4dGVybmFsIG91dHB1dCcpO1xuICAgIH1cbiAgICBjb25zdCBvdXRwdXQgPSBvdXRwdXRzWzBdO1xuICAgIGlmICghb3V0cHV0LmdldEFzc2V0SUQoKS5lcXVhbHModGhpcy50cmFuc2FjdGlvbi5fYXNzZXRJZCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVGhlIEFzc2V0IElEIG9mIHRoZSBvdXRwdXQgZG9lcyBub3QgbWF0Y2ggdGhlIHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuICAgIGNvbnN0IHNlY3BPdXQgPSBvdXRwdXQuZ2V0T3V0cHV0KCk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5fbG9ja3RpbWUgPSBzZWNwT3V0LmdldExvY2t0aW1lKCk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5fdGhyZXNob2xkID0gc2VjcE91dC5nZXRUaHJlc2hvbGQoKTtcbiAgICAvLyBvdXRwdXQgYWRkcmVzc2VzIGFyZSB0aGUgc2VuZGVyIGFkZHJlc3Nlc1xuICAgIHRoaXMudHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXMgPSBzZWNwT3V0LmdldEFkZHJlc3NlcygpO1xuICAgIHRoaXMuX2V4dGVybmFsQ2hhaW5JZCA9IGJhc2VUeC5nZXREZXN0aW5hdGlvbkNoYWluKCk7XG4gICAgdGhpcy5fYW1vdW50ID0gKHNlY3BPdXQgYXMgQW1vdW50T3V0cHV0KS5nZXRBbW91bnQoKTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLl91dHhvcyA9IGRlcHJlY2F0ZWRSZWNvdmVyVXR4b3MoYmFzZVR4LmdldElucygpKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHN0YXRpYyB2ZXJpZnlUeFR5cGUoYmFzZVR4OiBEZXByZWNhdGVkQmFzZVR4KTogYmFzZVR4IGlzIEV4cG9ydFR4IHtcbiAgICByZXR1cm4gYmFzZVR4LmdldFR5cGVJRCgpID09PSBQbGF0Zm9ybVZNQ29uc3RhbnRzLkVYUE9SVFRYO1xuICB9XG5cbiAgdmVyaWZ5VHhUeXBlKGJhc2VUeDogRGVwcmVjYXRlZEJhc2VUeCk6IGJhc2VUeCBpcyBFeHBvcnRUeCB7XG4gICAgcmV0dXJuIEV4cG9ydFR4QnVpbGRlci52ZXJpZnlUeFR5cGUoYmFzZVR4KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgdGhlIGludGVybmFsIGF2YWxhbmNoZSB0cmFuc2FjdGlvbi5cbiAgICogQHByb3RlY3RlZFxuICAgKi9cbiAgcHJvdGVjdGVkIGJ1aWxkQXZheFRyYW5zYWN0aW9uKCk6IHZvaWQge1xuICAgIC8vIGlmIHR4IGhhcyBjcmVkZW50aWFscywgdHggc2hvdWxkbid0IGNoYW5nZVxuICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uLmhhc0NyZWRlbnRpYWxzKSByZXR1cm47XG4gICAgY29uc3QgeyBpbnB1dHMsIG91dHB1dHMsIGNyZWRlbnRpYWxzIH0gPSB0aGlzLmNyZWF0ZUlucHV0T3V0cHV0KHRoaXMuX2Ftb3VudC5hZGQobmV3IEJOKHRoaXMudHJhbnNhY3Rpb24uZmVlLmZlZSkpKTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLnNldFRyYW5zYWN0aW9uKFxuICAgICAgbmV3IFBWTVR4KFxuICAgICAgICBuZXcgVW5zaWduZWRUeChcbiAgICAgICAgICBuZXcgRXhwb3J0VHgoXG4gICAgICAgICAgICB0aGlzLnRyYW5zYWN0aW9uLl9uZXR3b3JrSUQsXG4gICAgICAgICAgICB0aGlzLnRyYW5zYWN0aW9uLl9ibG9ja2NoYWluSUQsXG4gICAgICAgICAgICBvdXRwdXRzLFxuICAgICAgICAgICAgaW5wdXRzLFxuICAgICAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICAgICAgdGhpcy5fZXh0ZXJuYWxDaGFpbklkLFxuICAgICAgICAgICAgdGhpcy5leHBvcnRlZE91dHB1dHMoKVxuICAgICAgICAgIClcbiAgICAgICAgKSxcbiAgICAgICAgY3JlZGVudGlhbHNcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSB0aGUgRXhwb3J0ZWRPdXQgd2hlcmUgdGhlIHJlY2lwaWVudCBhZGRyZXNzIGFyZSB0aGUgc2VuZGVyLlxuICAgKiBMYXRlciBhIGltcG9ydFR4IHNob3VsZCBjb21wbGV0ZSB0aGUgb3BlcmF0aW9ucyBzaWduaW5nIHdpdGggdGhlIHNhbWUga2V5cy5cbiAgICogQHByb3RlY3RlZFxuICAgKi9cbiAgcHJvdGVjdGVkIGV4cG9ydGVkT3V0cHV0cygpOiBUcmFuc2ZlcmFibGVPdXRwdXRbXSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIG5ldyBUcmFuc2ZlcmFibGVPdXRwdXQoXG4gICAgICAgIHRoaXMudHJhbnNhY3Rpb24uX2Fzc2V0SWQsXG4gICAgICAgIG5ldyBTRUNQVHJhbnNmZXJPdXRwdXQoXG4gICAgICAgICAgdGhpcy5fYW1vdW50LFxuICAgICAgICAgIHRoaXMudHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXMsXG4gICAgICAgICAgdGhpcy50cmFuc2FjdGlvbi5fbG9ja3RpbWUsXG4gICAgICAgICAgdGhpcy50cmFuc2FjdGlvbi5fdGhyZXNob2xkXG4gICAgICAgIClcbiAgICAgICksXG4gICAgXTtcbiAgfVxufVxuIl19
|
package/dist/src/lib/iface.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { TransactionExplanation as BaseTransactionExplanation, Entry, TransactionType } from '@bitgo-beta/sdk-core';
|
|
2
|
+
import { EVMBaseTx as DeprecatedEVMBaseTx, EVMOutput, Tx as EVMTx } from 'avalanche/dist/apis/evm';
|
|
3
|
+
import { BaseTx as DeprecatedPMVBaseTx, Tx as PVMTx, TransferableOutput as DeprecatedTransferableOutput } from 'avalanche/dist/apis/platformvm';
|
|
4
|
+
import { avaxSerial, pvmSerial, UnsignedTx, TransferableOutput } from '@bitgo-forks/avalanchejs';
|
|
4
5
|
export interface AvaxpEntry extends Entry {
|
|
5
6
|
id: string;
|
|
6
7
|
}
|
|
@@ -8,7 +9,6 @@ export interface TransactionExplanation extends BaseTransactionExplanation {
|
|
|
8
9
|
type: TransactionType;
|
|
9
10
|
rewardAddresses: string[];
|
|
10
11
|
inputs: Entry[];
|
|
11
|
-
memo?: string;
|
|
12
12
|
}
|
|
13
13
|
/**
|
|
14
14
|
* Method names for the transaction method. Names change based on the type of transaction e.g 'bond' for the staking transaction
|
|
@@ -27,7 +27,6 @@ export interface TxData {
|
|
|
27
27
|
fromAddresses: string[];
|
|
28
28
|
threshold: number;
|
|
29
29
|
locktime: string;
|
|
30
|
-
memo?: string;
|
|
31
30
|
signatures: string[];
|
|
32
31
|
outputs: Entry[];
|
|
33
32
|
changeOutputs: Entry[];
|
|
@@ -42,8 +41,9 @@ export interface TxData {
|
|
|
42
41
|
* @param {string} txid Transaction ID encoded as cb58
|
|
43
42
|
* @param {string} outputidx Output index as a string
|
|
44
43
|
*/
|
|
45
|
-
export
|
|
44
|
+
export type DecodedUtxoObj = {
|
|
46
45
|
outputID: number;
|
|
46
|
+
locktime?: string;
|
|
47
47
|
amount: string;
|
|
48
48
|
txid: string;
|
|
49
49
|
outputidx: string;
|
|
@@ -54,12 +54,21 @@ export declare type DecodedUtxoObj = {
|
|
|
54
54
|
/**
|
|
55
55
|
* TypeId value for SECP256K1 Transfer Output
|
|
56
56
|
*
|
|
57
|
-
* {@link https://
|
|
57
|
+
* {@link https://build.avax.network/docs/api-reference/p-chain/txn-format#secp256k1-transfer-output }
|
|
58
58
|
*/
|
|
59
59
|
export declare const SECP256K1_Transfer_Output = 7;
|
|
60
|
+
/**
|
|
61
|
+
* TypeId value for Stakeable Lock Output
|
|
62
|
+
* {@link https://build.avax.network/docs/api-reference/p-chain/txn-format#stakeablelockout }
|
|
63
|
+
*/
|
|
64
|
+
export declare const SECP256K1_STAKEABLE_LOCK_OUT = 22;
|
|
60
65
|
export declare const ADDRESS_SEPARATOR = "~";
|
|
61
66
|
export declare const INPUT_SEPARATOR = ":";
|
|
62
|
-
export
|
|
63
|
-
export
|
|
64
|
-
export
|
|
67
|
+
export type DeprecatedTx = PVMTx | EVMTx;
|
|
68
|
+
export type DeprecatedBaseTx = DeprecatedPMVBaseTx | DeprecatedEVMBaseTx;
|
|
69
|
+
export type Tx = DeprecatedTx | pvmSerial.BaseTx | UnsignedTx;
|
|
70
|
+
export type BaseTx = avaxSerial.BaseTx;
|
|
71
|
+
export type AvaxTx = avaxSerial.AvaxTx;
|
|
72
|
+
export type DeprecatedOutput = DeprecatedTransferableOutput | EVMOutput;
|
|
73
|
+
export type Output = TransferableOutput;
|
|
65
74
|
//# sourceMappingURL=iface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,IAAI,0BAA0B,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACpH,OAAO,EAAE,SAAS,IAAI,mBAAmB,EAAE,SAAS,EAAE,EAAE,IAAI,KAAK,EAAE,MAAM,yBAAyB,CAAC;AACnG,OAAO,EACL,MAAM,IAAI,mBAAmB,EAC7B,EAAE,IAAI,KAAK,EACX,kBAAkB,IAAI,4BAA4B,EACnD,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACjG,MAAM,WAAW,UAAW,SAAQ,KAAK;IACvC,EAAE,EAAE,MAAM,CAAC;CACZ;AACD,MAAM,WAAW,sBAAuB,SAAQ,0BAA0B;IACxE,IAAI,EAAE,eAAe,CAAC;IACtB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,MAAM,EAAE,KAAK,EAAE,CAAC;CACjB;AAED;;GAEG;AACH,oBAAY,WAAW;IACrB,YAAY,IAAA;IACZ,YAAY,IAAA;CACb;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,IAAI,EAAE,eAAe,CAAC;IACtB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,OAAO,EAAE,KAAK,EAAE,CAAC;IACjB,aAAa,EAAE,KAAK,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C;;;GAGG;AACH,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAE/C,eAAO,MAAM,iBAAiB,MAAM,CAAC;AACrC,eAAO,MAAM,eAAe,MAAM,CAAC;AACnC,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,KAAK,CAAC;AACzC,MAAM,MAAM,gBAAgB,GAAG,mBAAmB,GAAG,mBAAmB,CAAC;AACzE,MAAM,MAAM,EAAE,GAAG,YAAY,GAAG,SAAS,CAAC,MAAM,GAAG,UAAU,CAAC;AAC9D,MAAM,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;AACvC,MAAM,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;AACvC,MAAM,MAAM,gBAAgB,GAAG,4BAA4B,GAAG,SAAS,CAAC;AACxE,MAAM,MAAM,MAAM,GAAG,kBAAkB,CAAC"}
|
package/dist/src/lib/iface.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.INPUT_SEPARATOR = exports.ADDRESS_SEPARATOR = exports.SECP256K1_Transfer_Output = exports.MethodNames = void 0;
|
|
3
|
+
exports.INPUT_SEPARATOR = exports.ADDRESS_SEPARATOR = exports.SECP256K1_STAKEABLE_LOCK_OUT = exports.SECP256K1_Transfer_Output = exports.MethodNames = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* Method names for the transaction method. Names change based on the type of transaction e.g 'bond' for the staking transaction
|
|
6
6
|
*/
|
|
@@ -8,13 +8,18 @@ var MethodNames;
|
|
|
8
8
|
(function (MethodNames) {
|
|
9
9
|
MethodNames[MethodNames["addDelegator"] = 0] = "addDelegator";
|
|
10
10
|
MethodNames[MethodNames["addValidator"] = 1] = "addValidator";
|
|
11
|
-
})(MethodNames
|
|
11
|
+
})(MethodNames || (exports.MethodNames = MethodNames = {}));
|
|
12
12
|
/**
|
|
13
13
|
* TypeId value for SECP256K1 Transfer Output
|
|
14
14
|
*
|
|
15
|
-
* {@link https://
|
|
15
|
+
* {@link https://build.avax.network/docs/api-reference/p-chain/txn-format#secp256k1-transfer-output }
|
|
16
16
|
*/
|
|
17
17
|
exports.SECP256K1_Transfer_Output = 7;
|
|
18
|
+
/**
|
|
19
|
+
* TypeId value for Stakeable Lock Output
|
|
20
|
+
* {@link https://build.avax.network/docs/api-reference/p-chain/txn-format#stakeablelockout }
|
|
21
|
+
*/
|
|
22
|
+
exports.SECP256K1_STAKEABLE_LOCK_OUT = 22;
|
|
18
23
|
exports.ADDRESS_SEPARATOR = '~';
|
|
19
24
|
exports.INPUT_SEPARATOR = ':';
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWlCQTs7R0FFRztBQUNILElBQVksV0FHWDtBQUhELFdBQVksV0FBVztJQUNyQiw2REFBWSxDQUFBO0lBQ1osNkRBQVksQ0FBQTtBQUNkLENBQUMsRUFIVyxXQUFXLDJCQUFYLFdBQVcsUUFHdEI7QUFzQ0Q7Ozs7R0FJRztBQUNVLFFBQUEseUJBQXlCLEdBQUcsQ0FBQyxDQUFDO0FBQzNDOzs7R0FHRztBQUNVLFFBQUEsNEJBQTRCLEdBQUcsRUFBRSxDQUFDO0FBRWxDLFFBQUEsaUJBQWlCLEdBQUcsR0FBRyxDQUFDO0FBQ3hCLFFBQUEsZUFBZSxHQUFHLEdBQUcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zYWN0aW9uRXhwbGFuYXRpb24gYXMgQmFzZVRyYW5zYWN0aW9uRXhwbGFuYXRpb24sIEVudHJ5LCBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBFVk1CYXNlVHggYXMgRGVwcmVjYXRlZEVWTUJhc2VUeCwgRVZNT3V0cHV0LCBUeCBhcyBFVk1UeCB9IGZyb20gJ2F2YWxhbmNoZS9kaXN0L2FwaXMvZXZtJztcbmltcG9ydCB7XG4gIEJhc2VUeCBhcyBEZXByZWNhdGVkUE1WQmFzZVR4LFxuICBUeCBhcyBQVk1UeCxcbiAgVHJhbnNmZXJhYmxlT3V0cHV0IGFzIERlcHJlY2F0ZWRUcmFuc2ZlcmFibGVPdXRwdXQsXG59IGZyb20gJ2F2YWxhbmNoZS9kaXN0L2FwaXMvcGxhdGZvcm12bSc7XG5pbXBvcnQgeyBhdmF4U2VyaWFsLCBwdm1TZXJpYWwsIFVuc2lnbmVkVHgsIFRyYW5zZmVyYWJsZU91dHB1dCB9IGZyb20gJ0BiaXRnby1mb3Jrcy9hdmFsYW5jaGVqcyc7XG5leHBvcnQgaW50ZXJmYWNlIEF2YXhwRW50cnkgZXh0ZW5kcyBFbnRyeSB7XG4gIGlkOiBzdHJpbmc7XG59XG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zYWN0aW9uRXhwbGFuYXRpb24gZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiB7XG4gIHR5cGU6IFRyYW5zYWN0aW9uVHlwZTtcbiAgcmV3YXJkQWRkcmVzc2VzOiBzdHJpbmdbXTtcbiAgaW5wdXRzOiBFbnRyeVtdO1xufVxuXG4vKipcbiAqIE1ldGhvZCBuYW1lcyBmb3IgdGhlIHRyYW5zYWN0aW9uIG1ldGhvZC4gTmFtZXMgY2hhbmdlIGJhc2VkIG9uIHRoZSB0eXBlIG9mIHRyYW5zYWN0aW9uIGUuZyAnYm9uZCcgZm9yIHRoZSBzdGFraW5nIHRyYW5zYWN0aW9uXG4gKi9cbmV4cG9ydCBlbnVtIE1ldGhvZE5hbWVzIHtcbiAgYWRkRGVsZWdhdG9yLFxuICBhZGRWYWxpZGF0b3IsXG59XG5cbi8qKlxuICogVGhlIHRyYW5zYWN0aW9uIGRhdGEgcmV0dXJuZWQgZnJvbSB0aGUgdG9Kc29uKCkgZnVuY3Rpb24gb2YgYSB0cmFuc2FjdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFR4RGF0YSB7XG4gIGlkOiBzdHJpbmc7XG4gIGlucHV0czogRW50cnlbXTtcbiAgdHlwZTogVHJhbnNhY3Rpb25UeXBlO1xuICBmcm9tQWRkcmVzc2VzOiBzdHJpbmdbXTtcbiAgdGhyZXNob2xkOiBudW1iZXI7XG4gIGxvY2t0aW1lOiBzdHJpbmc7XG4gIHNpZ25hdHVyZXM6IHN0cmluZ1tdO1xuICBvdXRwdXRzOiBFbnRyeVtdO1xuICBjaGFuZ2VPdXRwdXRzOiBFbnRyeVtdO1xuICBzb3VyY2VDaGFpbj86IHN0cmluZztcbiAgZGVzdGluYXRpb25DaGFpbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBEZWNvZGVkIFVUWE8gb2JqZWN0LiBUaGlzIGlzIGZvciBhIHNpbmdsZSB1dHhvXG4gKlxuICogQHBhcmFtIHtudW1iZXJ9IG91dHB1dElEXG4gKiBAcGFyYW0ge3N0cmluZ30gYW1vdW50IEFtb3VudCBhcyBhIEJpZyBOdW1iZXIgc3RyaW5nXG4gKiBAcGFyYW0ge3N0cmluZ30gdHhpZCBUcmFuc2FjdGlvbiBJRCBlbmNvZGVkIGFzIGNiNThcbiAqIEBwYXJhbSB7c3RyaW5nfSBvdXRwdXRpZHggT3V0cHV0IGluZGV4IGFzIGEgc3RyaW5nXG4gKi9cbmV4cG9ydCB0eXBlIERlY29kZWRVdHhvT2JqID0ge1xuICBvdXRwdXRJRDogbnVtYmVyO1xuICBsb2NrdGltZT86IHN0cmluZztcbiAgYW1vdW50OiBzdHJpbmc7XG4gIHR4aWQ6IHN0cmluZztcbiAgb3V0cHV0aWR4OiBzdHJpbmc7XG4gIHRocmVzaG9sZDogbnVtYmVyO1xuICBhZGRyZXNzZXM6IHN0cmluZ1tdO1xuICBhZGRyZXNzZXNJbmRleD86IG51bWJlcltdO1xufTtcblxuLyoqXG4gKiBUeXBlSWQgdmFsdWUgZm9yIFNFQ1AyNTZLMSBUcmFuc2ZlciBPdXRwdXRcbiAqXG4gKiB7QGxpbmsgaHR0cHM6Ly9idWlsZC5hdmF4Lm5ldHdvcmsvZG9jcy9hcGktcmVmZXJlbmNlL3AtY2hhaW4vdHhuLWZvcm1hdCNzZWNwMjU2azEtdHJhbnNmZXItb3V0cHV0IH1cbiAqL1xuZXhwb3J0IGNvbnN0IFNFQ1AyNTZLMV9UcmFuc2Zlcl9PdXRwdXQgPSA3O1xuLyoqXG4gKiBUeXBlSWQgdmFsdWUgZm9yIFN0YWtlYWJsZSBMb2NrIE91dHB1dFxuICoge0BsaW5rIGh0dHBzOi8vYnVpbGQuYXZheC5uZXR3b3JrL2RvY3MvYXBpLXJlZmVyZW5jZS9wLWNoYWluL3R4bi1mb3JtYXQjc3Rha2VhYmxlbG9ja291dCB9XG4gKi9cbmV4cG9ydCBjb25zdCBTRUNQMjU2SzFfU1RBS0VBQkxFX0xPQ0tfT1VUID0gMjI7XG5cbmV4cG9ydCBjb25zdCBBRERSRVNTX1NFUEFSQVRPUiA9ICd+JztcbmV4cG9ydCBjb25zdCBJTlBVVF9TRVBBUkFUT1IgPSAnOic7XG5leHBvcnQgdHlwZSBEZXByZWNhdGVkVHggPSBQVk1UeCB8IEVWTVR4O1xuZXhwb3J0IHR5cGUgRGVwcmVjYXRlZEJhc2VUeCA9IERlcHJlY2F0ZWRQTVZCYXNlVHggfCBEZXByZWNhdGVkRVZNQmFzZVR4O1xuZXhwb3J0IHR5cGUgVHggPSBEZXByZWNhdGVkVHggfCBwdm1TZXJpYWwuQmFzZVR4IHwgVW5zaWduZWRUeDtcbmV4cG9ydCB0eXBlIEJhc2VUeCA9IGF2YXhTZXJpYWwuQmFzZVR4O1xuZXhwb3J0IHR5cGUgQXZheFR4ID0gYXZheFNlcmlhbC5BdmF4VHg7XG5leHBvcnQgdHlwZSBEZXByZWNhdGVkT3V0cHV0ID0gRGVwcmVjYXRlZFRyYW5zZmVyYWJsZU91dHB1dCB8IEVWTU91dHB1dDtcbmV4cG9ydCB0eXBlIE91dHB1dCA9IFRyYW5zZmVyYWJsZU91dHB1dDtcbiJdfQ==
|