@bitgo/sdk-coin-avaxp 3.22.2 → 3.22.4
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/CHANGELOG.md +11 -0
- package/dist/src/avaxp.d.ts +1 -2
- package/dist/src/avaxp.d.ts.map +1 -1
- package/dist/src/avaxp.js +3 -17
- 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/lib/delegatorTxBuilder.js +2 -2
- package/dist/src/lib/exportTxBuilder.js +2 -2
- package/dist/src/lib/iface.d.ts +0 -2
- package/dist/src/lib/iface.d.ts.map +1 -1
- package/dist/src/lib/iface.js +1 -1
- package/dist/src/lib/importTxBuilder.js +2 -2
- package/dist/src/lib/transaction.d.ts +0 -1
- package/dist/src/lib/transaction.d.ts.map +1 -1
- package/dist/src/lib/transaction.js +2 -16
- package/dist/src/lib/transactionBuilder.d.ts +0 -7
- package/dist/src/lib/transactionBuilder.d.ts.map +1 -1
- package/dist/src/lib/transactionBuilder.js +1 -15
- package/dist/src/lib/validatorTxBuilder.js +2 -2
- package/dist/test/resources/avaxp.d.ts +2 -5
- package/dist/test/resources/avaxp.d.ts.map +1 -1
- package/dist/test/resources/avaxp.js +27 -30
- package/dist/test/resources/tx/importP.js +8 -8
- package/dist/test/unit/avaxp.js +9 -91
- package/dist/test/unit/lib/exportP2CTxBuilder.js +1 -5
- package/dist/test/unit/lib/importP2CTxBuilder.js +1 -3
- package/dist/test/unit/lib/validateTxBuilder.js +3 -8
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +6 -6
|
@@ -133,8 +133,6 @@ class Transaction extends sdk_core_1.BaseTransaction {
|
|
|
133
133
|
if (!this.avaxPTransaction) {
|
|
134
134
|
throw new sdk_core_1.InvalidTransactionError('Empty transaction data');
|
|
135
135
|
}
|
|
136
|
-
// EVMTx do not have memo.
|
|
137
|
-
const memo = 'getMemo' in this.avaxPTransaction ? utils_1.default.bufferToString(this.avaxPTransaction.getMemo()) : undefined;
|
|
138
136
|
return {
|
|
139
137
|
id: this.id,
|
|
140
138
|
inputs: this.inputs,
|
|
@@ -142,7 +140,6 @@ class Transaction extends sdk_core_1.BaseTransaction {
|
|
|
142
140
|
threshold: this._threshold,
|
|
143
141
|
locktime: this._locktime.toString(),
|
|
144
142
|
type: this.type,
|
|
145
|
-
memo,
|
|
146
143
|
signatures: this.signature,
|
|
147
144
|
outputs: this.outputs,
|
|
148
145
|
changeOutputs: this.changeOutputs,
|
|
@@ -260,17 +257,7 @@ class Transaction extends sdk_core_1.BaseTransaction {
|
|
|
260
257
|
/** @inheritdoc */
|
|
261
258
|
explainTransaction() {
|
|
262
259
|
const txJson = this.toJson();
|
|
263
|
-
const displayOrder = [
|
|
264
|
-
'id',
|
|
265
|
-
'inputs',
|
|
266
|
-
'outputAmount',
|
|
267
|
-
'changeAmount',
|
|
268
|
-
'outputs',
|
|
269
|
-
'changeOutputs',
|
|
270
|
-
'fee',
|
|
271
|
-
'type',
|
|
272
|
-
'memo',
|
|
273
|
-
];
|
|
260
|
+
const displayOrder = ['id', 'inputs', 'outputAmount', 'changeAmount', 'outputs', 'changeOutputs', 'fee', 'type'];
|
|
274
261
|
const outputAmount = txJson.outputs.reduce((p, n) => p.add(new avalanche_1.BN(n.value)), new avalanche_1.BN(0)).toString();
|
|
275
262
|
const changeAmount = txJson.changeOutputs.reduce((p, n) => p.add(new avalanche_1.BN(n.value)), new avalanche_1.BN(0)).toString();
|
|
276
263
|
let rewardAddresses;
|
|
@@ -289,7 +276,6 @@ class Transaction extends sdk_core_1.BaseTransaction {
|
|
|
289
276
|
rewardAddresses,
|
|
290
277
|
fee: this.fee,
|
|
291
278
|
type: txJson.type,
|
|
292
|
-
memo: txJson.memo,
|
|
293
279
|
};
|
|
294
280
|
}
|
|
295
281
|
/**
|
|
@@ -351,4 +337,4 @@ class Transaction extends sdk_core_1.BaseTransaction {
|
|
|
351
337
|
}
|
|
352
338
|
}
|
|
353
339
|
exports.Transaction = Transaction;
|
|
354
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLDhDQVF5QjtBQUV6QixtQ0FRaUI7QUFHakIseUNBQXFEO0FBQ3JELG9EQUE0QjtBQVk1QixTQUFTLGdCQUFnQixDQUFDLENBQVM7SUFDakMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztBQUNuRCxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILFNBQVMseUJBQXlCLENBQUMsVUFBaUM7SUFDbEUsSUFBSSxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtRQUNuRixvQkFBb0I7UUFDcEIsT0FBTyxVQUFVLEdBQUcsRUFBRSxPQUFPO1lBQzNCLElBQUk7Z0JBQ0YsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRTtvQkFDaEMsT0FBTyxLQUFLLENBQUM7aUJBQ2Q7Z0JBQ0QsTUFBTSxHQUFHLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ3BDLE9BQU8sR0FBRyxLQUFLLE9BQU8sQ0FBQzthQUN4QjtZQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUNWLE9BQU8sS0FBSyxDQUFDO2FBQ2Q7UUFDSCxDQUFDLENBQUM7S0FDSDtTQUFNO1FBQ0wsd0JBQXdCO1FBQ3hCLE9BQU8sVUFBVSxHQUFHLEVBQUUsT0FBTztZQUMzQixJQUFJLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUM7Z0JBQUUsT0FBTyxJQUFJ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O1lBQ2I7Z0JBQ0UsT0FBTyxZQUFZLENBQUM7U0FDdkI7SUFDSCxDQUFDO0NBQ0Y7QUEzVkQsa0NBMlZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXZhbGFuY2hlTmV0d29yaywgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby9zdGF0aWNzJztcbmltcG9ydCB7XG4gIEJhc2VLZXksXG4gIEJhc2VUcmFuc2FjdGlvbixcbiAgRW50cnksXG4gIEludmFsaWRUcmFuc2FjdGlvbkVycm9yLFxuICBTaWduaW5nRXJyb3IsXG4gIFRyYW5zYWN0aW9uRmVlLFxuICBUcmFuc2FjdGlvblR5cGUsXG59IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQgeyBLZXlQYWlyIH0gZnJvbSAnLi9rZXlQYWlyJztcbmltcG9ydCB7XG4gIEJhc2VUeCxcbiAgRGVjb2RlZFV0eG9PYmosXG4gIFRyYW5zYWN0aW9uRXhwbGFuYXRpb24sXG4gIFR4LFxuICBUeERhdGEsXG4gIElOUFVUX1NFUEFSQVRPUixcbiAgQUREUkVTU19TRVBBUkFUT1IsXG59IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHsgQWRkRGVsZWdhdG9yVHgsIEFtb3VudElucHV0LCBCYXNlVHggYXMgUFZNQmFzZVR4LCBFeHBvcnRUeCwgSW1wb3J0VHggfSBmcm9tICdhdmFsYW5jaGUvZGlzdC9hcGlzL3BsYXRmb3Jtdm0nO1xuaW1wb3J0IHsgRXhwb3J0VHggYXMgRVZNRXhwb3J0VHgsIEltcG9ydFR4IGFzIEVWTUltcG9ydFR4IH0gZnJvbSAnYXZhbGFuY2hlL2Rpc3QvYXBpcy9ldm0nO1xuaW1wb3J0IHsgQk4sIEJ1ZmZlciBhcyBCdWZmZXJBdmF4IH0gZnJvbSAnYXZhbGFuY2hlJztcbmltcG9ydCB1dGlscyBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IENyZWRlbnRpYWwgfSBmcm9tICdhdmFsYW5jaGUvZGlzdC9jb21tb24nO1xuaW1wb3J0IHsgQnVmZmVyIH0gZnJvbSAnYnVmZmVyJztcblxuLy8gcmVnaW9uIHV0aWxzIHRvIHNpZ25cbmludGVyZmFjZSBzaWduYXR1cmVTZXJpYWxpemVkIHtcbiAgYnl0ZXM6IHN0cmluZztcbn1cbmludGVyZmFjZSBDaGVja1NpZ25hdHVyZSB7XG4gIChzaWdhdHVyZTogc2lnbmF0dXJlU2VyaWFsaXplZCwgYWRkcmVzc0hleDogc3RyaW5nKTogYm9vbGVhbjtcbn1cblxuZnVuY3Rpb24gaXNFbXB0eVNpZ25hdHVyZShzOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgcmV0dXJuICEhcyAmJiBzLnN0YXJ0c1dpdGgoJycucGFkU3RhcnQoOTAsICcwJykpO1xufVxuXG4vKipcbiAqIFNpZ25hdHVyZXMgYXJlIHByZXN0b3JlIGFzIGVtcHR5IGJ1ZmZlciBmb3IgaHNtIGFuZCBhZGRyZXNzIG9mIHNpZ25hciBmb3IgZmlyc3Qgc2lnbmF0dXJlLlxuICogV2hlbiBzaWduIGlzIHJlcXVpcmVkLCB0aGlzIG1ldGhvZCByZXR1cm4gdGhlIGZ1bmN0aW9uIHRoYXQgaWRlbnRpZnkgYSBzaWduYXR1cmUgdG8gYmUgcmVwbGFjZWQuXG4gKiBAcGFyYW0gc2lnbmF0dXJlcyBhbnkgc2lnbmF0dXJlcyBhcyBzYW1wbGVzIHRvIGlkZW50aWZ5IHdoaWNoIHNpZ25hdHVyZSByZXF1aXJlZCByZXBsYWNlLlxuICovXG5mdW5jdGlvbiBnZW5lcmF0ZVNlbGVjdG9yU2lnbmF0dXJlKHNpZ25hdHVyZXM6IHNpZ25hdHVyZVNlcmlhbGl6ZWRbXSk6IENoZWNrU2lnbmF0dXJlIHtcbiAgaWYgKHNpZ25hdHVyZXMubGVuZ3RoID4gMSAmJiBzaWduYXR1cmVzLmV2ZXJ5KChzaWcpID0+IGlzRW1wdHlTaWduYXR1cmUoc2lnLmJ5dGVzKSkpIHtcbiAgICAvLyBMb29rIGZvciBhZGRyZXNzLlxuICAgIHJldHVybiBmdW5jdGlvbiAoc2lnLCBhZGRyZXNzKTogYm9vbGVhbiB7XG4gICAgICB0cnkge1xuICAgICAgICBpZiAoIWlzRW1wdHlTaWduYXR1cmUoc2lnLmJ5dGVzKSkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBwdWIgPSBzaWcuYnl0ZXMuc3Vic3RyaW5nKDkwKTtcbiAgICAgICAgcmV0dXJuIHB1YiA9PT0gYWRkcmVzcztcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH07XG4gIH0gZWxzZSB7XG4gICAgLy8gTG9vayBmb3IgZW1wdHkgc3RyaW5nXG4gICAgcmV0dXJuIGZ1bmN0aW9uIChzaWcsIGFkZHJlc3MpOiBib29sZWFuIHtcbiAgICAgIGlmIChpc0VtcHR5U2lnbmF0dXJlKHNpZy5ieXRlcykpIHJldHVybiB0cnVlO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH07XG4gIH1cbn1cbi8vIGVuZCByZWdpb24gdXRpbHMgZm9yIHNpZ25cblxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uIGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uIHtcbiAgcHJvdGVjdGVkIF9hdmF4VHJhbnNhY3Rpb246IFR4O1xuICBwdWJsaWMgX3R5cGU6IFRyYW5zYWN0aW9uVHlwZTtcbiAgcHVibGljIF9uZXR3b3JrOiBBdmFsYW5jaGVOZXR3b3JrO1xuICBwdWJsaWMgX25ldHdvcmtJRDogbnVtYmVyO1xuICBwdWJsaWMgX2Fzc2V0SWQ6IEJ1ZmZlckF2YXg7XG4gIHB1YmxpYyBfYmxvY2tjaGFpbklEOiBCdWZmZXJBdmF4O1xuICBwdWJsaWMgX21lbW8/OiBCdWZmZXJBdmF4O1xuICBwdWJsaWMgX3RocmVzaG9sZCA9IDI7XG4gIHB1YmxpYyBfbG9ja3RpbWU6IEJOID0gbmV3IEJOKDApO1xuICBwdWJsaWMgX2Zyb21BZGRyZXNzZXM6IEJ1ZmZlckF2YXhbXSA9IFtdO1xuICBwdWJsaWMgX3Jld2FyZEFkZHJlc3NlczogQnVmZmVyQXZheFtdO1xuICBwdWJsaWMgX3V0eG9zOiBEZWNvZGVkVXR4b09ialtdID0gW107XG4gIHB1YmxpYyBfdG86IEJ1ZmZlckF2YXhbXTtcbiAgcHVibGljIF9mZWU6IFBhcnRpYWw8VHJhbnNhY3Rpb25GZWU+ID0ge307XG5cbiAgY29uc3RydWN0b3IoY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihjb2luQ29uZmlnKTtcbiAgICB0aGlzLl9uZXR3b3JrID0gY29pbkNvbmZpZy5uZXR3b3JrIGFzIEF2YWxhbmNoZU5ldHdvcms7XG4gICAgdGhpcy5fYXNzZXRJZCA9IHV0aWxzLmNiNThEZWNvZGUodGhpcy5fbmV0d29yay5hdmF4QXNzZXRJRCk7XG4gICAgdGhpcy5fYmxvY2tjaGFpbklEID0gdXRpbHMuY2I1OERlY29kZSh0aGlzLl9uZXR3b3JrLmJsb2NrY2hhaW5JRCk7XG4gICAgdGhpcy5fbmV0d29ya0lEID0gdGhpcy5fbmV0d29yay5uZXR3b3JrSUQ7XG4gIH1cblxuICBnZXQgYXZheFBUcmFuc2FjdGlvbigpOiBCYXNlVHgge1xuICAgIHJldHVybiB0aGlzLl9hdmF4VHJhbnNhY3Rpb24uZ2V0VW5zaWduZWRUeCgpLmdldFRyYW5zYWN0aW9uKCk7XG4gIH1cblxuICBnZXQgc2lnbmF0dXJlKCk6IHN0cmluZ1tdIHtcbiAgICBpZiAodGhpcy5jcmVkZW50aWFscy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG4gICAgY29uc3Qgb2JqOiBhbnkgPSB0aGlzLmNyZWRlbnRpYWxzWzBdLnNlcmlhbGl6ZSgpO1xuICAgIHJldHVybiBvYmouc2lnQXJyYXkubWFwKChzKSA9PiBzLmJ5dGVzKS5maWx0ZXIoKHMpID0+ICFpc0VtcHR5U2lnbmF0dXJlKHMpKTtcbiAgfVxuXG4gIGdldCBjcmVkZW50aWFscygpOiBDcmVkZW50aWFsW10ge1xuICAgIC8vIGl0IHNob3VsZCBiZSB0aGlzLl9hdmF4cFRyYW5zYWN0aW9uPy5nZXRDcmVkZW50aWFscygpLCBidXQgRVZNVHggZG9lc24ndCBoYXZlIGl0XG4gICAgcmV0dXJuICh0aGlzLl9hdmF4VHJhbnNhY3Rpb24gYXMgYW55KT8uY3JlZGVudGlhbHM7XG4gIH1cblxuICBnZXQgaGFzQ3JlZGVudGlhbHMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuY3JlZGVudGlhbHMgIT09IHVuZGVmaW5lZCAmJiB0aGlzLmNyZWRlbnRpYWxzLmxlbmd0aCA+IDA7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgY2FuU2lnbih7IGtleSB9OiBCYXNlS2V5KTogYm9vbGVhbiB7XG4gICAgLy8gVE9ETyhCRy01NjcwMCk6ICBJbXByb3ZlIGNhblNpZ24gYnkgY2hlY2sgaW4gYWRkcmVzc2VzIGluIGVtcHR5IGNyZWRlbnRpYWxzIG1hdGNoIHNpZ25lclxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgLyoqXG4gICAqIFNpZ24gYSBhdmF4cCB0cmFuc2FjdGlvbiBhbmQgdXBkYXRlIHRoZSB0cmFuc2FjdGlvbiBoZXhcbiAgICogdmFsaWRhdG9yLCBkZWxlZ2F0b3IsIGltcG9ydCwgZXhwb3J0cyBleHRlbmQgYmFzZVR4XG4gICAqIHVuc2lnbmVkVHg6IFVuc2lnbmVkVHggPSBuZXcgVW5zaWduZWRUeChiYXNlVHgpICAoYmFzZVR4ID0gYWRkVmFsaWRhdG9yVHgpXG4gICAqIGNvbnN0IHR4OiBUeCA9IHVuc2lnbmVkVHguc2lnbihrZXljaGFpbikgKHR4IGlzIHR5cGUgc3RhbmRhcmQgc2lnbmVkIHR4KVxuICAgKiBnZXQgYmFzZVR4IHRoZW4gY3JlYXRlIG5ldyB1bnNpZ25lZFR4IHRoZW4gc2lnblxuICAgKlxuICAgKiBAcGFyYW0ge0tleVBhaXJ9IGtleVBhaXJcbiAgICovXG4gIHNpZ24oa2V5UGFpcjogS2V5UGFpcik6IHZvaWQge1xuICAgIGNvbnN0IHBydiA9IGtleVBhaXIuZ2V0UHJpdmF0ZUtleSgpO1xuICAgIGNvbnN0IGFkZHJlc3NIZXggPSBrZXlQYWlyLmdldEFkZHJlc3NCdWZmZXIoKS50b1N0cmluZygnaGV4Jyk7XG4gICAgaWYgKCFwcnYpIHtcbiAgICAgIHRocm93IG5ldyBTaWduaW5nRXJyb3IoJ01pc3NpbmcgcHJpdmF0ZSBrZXknKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLmF2YXhQVHJhbnNhY3Rpb24pIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignZW1wdHkgdHJhbnNhY3Rpb24gdG8gc2lnbicpO1xuICAgIH1cbiAgICBpZiAoIXRoaXMuaGFzQ3JlZGVudGlhbHMpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignZW1wdHkgY3JlZGVudGlhbHMgdG8gc2lnbicpO1xuICAgIH1cbiAgICBjb25zdCBzaWduYXR1cmUgPSB0aGlzLmNyZWF0ZVNpZ25hdHVyZShwcnYpO1xuICAgIGxldCBjaGVja1NpZ246IENoZWNrU2lnbmF0dXJlIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuY3JlZGVudGlhbHMuZm9yRWFjaCgoYykgPT4ge1xuICAgICAgY29uc3QgY3M6IGFueSA9IGMuc2VyaWFsaXplKCk7XG4gICAgICBpZiAoY2hlY2tTaWduID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgY2hlY2tTaWduID0gZ2VuZXJhdGVTZWxlY3RvclNpZ25hdHVyZShjcy5zaWdBcnJheSk7XG4gICAgICB9XG4gICAgICBsZXQgZmluZCA9IGZhbHNlO1xuICAgICAgY3Muc2lnQXJyYXkuZm9yRWFjaCgoc2lnKSA9PiB7XG4gICAgICAgIGlmIChjaGVja1NpZ24gJiYgY2hlY2tTaWduKHNpZywgYWRkcmVzc0hleCkpIHtcbiAgICAgICAgICBzaWcuYnl0ZXMgPSBzaWduYXR1cmU7XG4gICAgICAgICAgZmluZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgaWYgKCFmaW5kKSB0aHJvdyBuZXcgU2lnbmluZ0Vycm9yKCdQcml2YXRlIGtleSBjYW5ub3Qgc2lnbiB0aGUgdHJhbnNhY3Rpb24nKTtcbiAgICAgIGMuZGVzZXJpYWxpemUoY3MpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIC8qKlxuICAgKiBzaG91bGQgYmUgb2Ygc2lnbmVkVHggZG9pbmcgdGhpcyB3aXRoIGJhc2VUeFxuICAgKi9cbiAgdG9Ccm9hZGNhc3RGb3JtYXQoKTogc3RyaW5nIHtcbiAgICBpZiAoIXRoaXMuYXZheFBUcmFuc2FjdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdFbXB0eSB0cmFuc2FjdGlvbiBkYXRhJyk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLl9hdmF4VHJhbnNhY3Rpb24udG9TdHJpbmdIZXgoKTtcbiAgfVxuXG4gIC8vIHR5cGVzIC0gc3Rha2luZ1RyYW5zYWN0aW9uLCBpbXBvcnQsIGV4cG9ydFxuICB0b0pzb24oKTogVHhEYXRhIHtcbiAgICBpZiAoIXRoaXMuYXZheFBUcmFuc2FjdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdFbXB0eSB0cmFuc2FjdGlvbiBkYXRhJyk7XG4gICAgfVxuICAgIC8vIEVWTVR4IGRvIG5vdCBoYXZlIG1lbW8uXG4gICAgY29uc3QgbWVtbyA9ICdnZXRNZW1vJyBpbiB0aGlzLmF2YXhQVHJhbnNhY3Rpb24gPyB1dGlscy5idWZmZXJUb1N0cmluZyh0aGlzLmF2YXhQVHJhbnNhY3Rpb24uZ2V0TWVtbygpKSA6IHVuZGVmaW5lZDtcbiAgICByZXR1cm4ge1xuICAgICAgaWQ6IHRoaXMuaWQsXG4gICAgICBpbnB1dHM6IHRoaXMuaW5wdXRzLFxuICAgICAgZnJvbUFkZHJlc3NlczogdGhpcy5mcm9tQWRkcmVzc2VzLFxuICAgICAgdGhyZXNob2xkOiB0aGlzLl90aHJlc2hvbGQsXG4gICAgICBsb2NrdGltZTogdGhpcy5fbG9ja3RpbWUudG9TdHJpbmcoKSxcbiAgICAgIHR5cGU6IHRoaXMudHlwZSxcbiAgICAgIG1lbW8sXG4gICAgICBzaWduYXR1cmVzOiB0aGlzLnNpZ25hdHVyZSxcbiAgICAgIG91dHB1dHM6IHRoaXMub3V0cHV0cyxcbiAgICAgIGNoYW5nZU91dHB1dHM6IHRoaXMuY2hhbmdlT3V0cHV0cyxcbiAgICAgIHNvdXJjZUNoYWluOiB0aGlzLnNvdXJjZUNoYWluLFxuICAgICAgZGVzdGluYXRpb25DaGFpbjogdGhpcy5kZXN0aW5hdGlvbkNoYWluLFxuICAgIH07XG4gIH1cblxuICBzZXRUcmFuc2FjdGlvbih0eDogVHgpOiB2b2lkIHtcbiAgICB0aGlzLl9hdmF4VHJhbnNhY3Rpb24gPSB0eDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHRyYW5zYWN0aW9uIHR5cGVcbiAgICpcbiAgICogQHBhcmFtIHtUcmFuc2FjdGlvblR5cGV9IHRyYW5zYWN0aW9uVHlwZSBUaGUgdHJhbnNhY3Rpb24gdHlwZSB0byBiZSBzZXRcbiAgICovXG4gIHNldFRyYW5zYWN0aW9uVHlwZSh0cmFuc2FjdGlvblR5cGU6IFRyYW5zYWN0aW9uVHlwZSk6IHZvaWQge1xuICAgIHRoaXMuX3R5cGUgPSB0cmFuc2FjdGlvblR5cGU7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgcG9ydGlvbiBvZiB0aGUgdHJhbnNhY3Rpb24gdGhhdCBuZWVkcyB0byBiZSBzaWduZWQgaW4gQnVmZmVyIGZvcm1hdC5cbiAgICogT25seSBuZWVkZWQgZm9yIGNvaW5zIHRoYXQgc3VwcG9ydCBhZGRpbmcgc2lnbmF0dXJlcyBkaXJlY3RseSAoZS5nLiBUU1MpLlxuICAgKi9cbiAgZ2V0IHNpZ25hYmxlUGF5bG9hZCgpOiBCdWZmZXIge1xuICAgIHJldHVybiB1dGlscy5zaGEyNTYodGhpcy5fYXZheFRyYW5zYWN0aW9uLmdldFVuc2lnbmVkVHgoKS50b0J1ZmZlcigpKTtcbiAgfVxuXG4gIGdldCBpZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB1dGlscy5jYjU4RW5jb2RlKEJ1ZmZlckF2YXguZnJvbSh1dGlscy5zaGEyNTYodGhpcy5fYXZheFRyYW5zYWN0aW9uLnRvQnVmZmVyKCkpKSk7XG4gIH1cblxuICBnZXQgZnJvbUFkZHJlc3NlcygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2Zyb21BZGRyZXNzZXMubWFwKChhKSA9PiB1dGlscy5hZGRyZXNzVG9TdHJpbmcodGhpcy5fbmV0d29yay5ocnAsIHRoaXMuX25ldHdvcmsuYWxpYXMsIGEpKTtcbiAgfVxuXG4gIGdldCByZXdhcmRBZGRyZXNzZXMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLl9yZXdhcmRBZGRyZXNzZXMubWFwKChhKSA9PiB1dGlscy5hZGRyZXNzVG9TdHJpbmcodGhpcy5fbmV0d29yay5ocnAsIHRoaXMuX25ldHdvcmsuYWxpYXMsIGEpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIGxpc3Qgb2Ygb3V0cHV0cy4gQW1vdW50cyBhcmUgZXhwcmVzc2VkIGluIGFic29sdXRlIHZhbHVlLlxuICAgKi9cbiAgZ2V0IG91dHB1dHMoKTogRW50cnlbXSB7XG4gICAgc3dpdGNoICh0aGlzLnR5cGUpIHtcbiAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLkltcG9ydDpcbiAgICAgICAgcmV0dXJuICh0aGlzLmF2YXhQVHJhbnNhY3Rpb24gYXMgSW1wb3J0VHggfCBFVk1JbXBvcnRUeCkuZ2V0T3V0cygpLm1hcCh1dGlscy5tYXBPdXRwdXRUb0VudHJ5KHRoaXMuX25ldHdvcmspKTtcbiAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLkV4cG9ydDpcbiAgICAgICAgaWYgKHV0aWxzLmlzVHJhbnNhY3Rpb25PZih0aGlzLl9hdmF4VHJhbnNhY3Rpb24sIHRoaXMuX25ldHdvcmsuY0NoYWluQmxvY2tjaGFpbklEKSkge1xuICAgICAgICAgIHJldHVybiAodGhpcy5hdmF4UFRyYW5zYWN0aW9uIGFzIEVWTUV4cG9ydFR4KS5nZXRFeHBvcnRlZE91dHB1dHMoKS5tYXAodXRpbHMubWFwT3V0cHV0VG9FbnRyeSh0aGlzLl9uZXR3b3JrKSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuICh0aGlzLmF2YXhQVHJhbnNhY3Rpb24gYXMgRXhwb3J0VHgpLmdldEV4cG9ydE91dHB1dHMoKS5tYXAodXRpbHMubWFwT3V0cHV0VG9FbnRyeSh0aGlzLl9uZXR3b3JrKSk7XG4gICAgICAgIH1cbiAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLkFkZERlbGVnYXRvcjpcbiAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLkFkZFZhbGlkYXRvcjpcbiAgICAgICAgLy8gR2V0IHN0YWtlZCBvdXRwdXRzXG4gICAgICAgIGNvbnN0IGFkZFZhbGlkYXRvclR4ID0gdGhpcy5hdmF4UFRyYW5zYWN0aW9uIGFzIEFkZERlbGVnYXRvclR4O1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGFkZHJlc3M6IGFkZFZhbGlkYXRvclR4LmdldE5vZGVJRFN0cmluZygpLFxuICAgICAgICAgICAgdmFsdWU6IGFkZFZhbGlkYXRvclR4LmdldFN0YWtlQW1vdW50KCkudG9TdHJpbmcoKSxcbiAgICAgICAgICB9LFxuICAgICAgICBdO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIFtdO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYSBUcmFuc2FzY3Rpb24gRmVlLlxuICAgKi9cbiAgZ2V0IGZlZSgpOiBUcmFuc2FjdGlvbkZlZSB7XG4gICAgcmV0dXJuIHsgZmVlOiAnMCcsIC4uLnRoaXMuX2ZlZSB9O1xuICB9XG5cbiAgZ2V0IGNoYW5nZU91dHB1dHMoKTogRW50cnlbXSB7XG4gICAgLy8gQy1jaGFpbiB0eCBhZG4gSW1wb3J0IFR4cyBkb24ndCBoYXZlIGNoYW5nZSBvdXRwdXRzXG4gICAgaWYgKFxuICAgICAgdGhpcy50eXBlID09PSBUcmFuc2FjdGlvblR5cGUuSW1wb3J0IHx8XG4gICAgICB1dGlscy5pc1RyYW5zYWN0aW9uT2YodGhpcy5fYXZheFRyYW5zYWN0aW9uLCB0aGlzLl9uZXR3b3JrLmNDaGFpbkJsb2NrY2hhaW5JRClcbiAgICApIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG4gICAgLy8gZ2VuZXJhbCBzdXBwb3J0IGFueSB0cmFuc2FjdGlvbiB0eXBlLCBidXQgaXQncyBzY29wZWQgeWV0XG4gICAgcmV0dXJuICh0aGlzLmF2YXhQVHJhbnNhY3Rpb24gYXMgUFZNQmFzZVR4KS5nZXRPdXRzKCkubWFwKHV0aWxzLm1hcE91dHB1dFRvRW50cnkodGhpcy5fbmV0d29yaykpO1xuICB9XG5cbiAgZ2V0IGlucHV0cygpOiBFbnRyeVtdIHtcbiAgICBsZXQgaW5wdXRzO1xuICAgIHN3aXRjaCAodGhpcy50eXBlKSB7XG4gICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5JbXBvcnQ6XG4gICAgICAgIGlucHV0cyA9ICh0aGlzLmF2YXhQVHJhbnNhY3Rpb24gYXMgSW1wb3J0VHggfCBFVk1JbXBvcnRUeCkuZ2V0SW1wb3J0SW5wdXRzKCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBUcmFuc2FjdGlvblR5cGUuRXhwb3J0OlxuICAgICAgICBpZiAodXRpbHMuaXNUcmFuc2FjdGlvbk9mKHRoaXMuX2F2YXhUcmFuc2FjdGlvbiwgdGhpcy5fbmV0d29yay5jQ2hhaW5CbG9ja2NoYWluSUQpKSB7XG4gICAgICAgICAgcmV0dXJuICh0aGlzLmF2YXhQVHJhbnNhY3Rpb24gYXMgRVZNRXhwb3J0VHgpLmdldElucHV0cygpLm1hcCgoZXZtSW5wdXQpID0+ICh7XG4gICAgICAgICAgICBhZGRyZXNzOiAnMHgnICsgZXZtSW5wdXQuZ2V0QWRkcmVzc1N0cmluZygpLFxuICAgICAgICAgICAgdmFsdWU6IG5ldyBCTigoZXZtSW5wdXQgYXMgYW55KS5hbW91bnQpLnRvU3RyaW5nKCksXG4gICAgICAgICAgICBub25jZTogZXZtSW5wdXQuZ2V0Tm9uY2UoKS50b051bWJlcigpLFxuICAgICAgICAgIH0pKTtcbiAgICAgICAgfVxuICAgICAgICBpbnB1dHMgPSAodGhpcy5hdmF4UFRyYW5zYWN0aW9uIGFzIFBWTUJhc2VUeCkuZ2V0SW5zKCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgaW5wdXRzID0gKHRoaXMuYXZheFBUcmFuc2FjdGlvbiBhcyBQVk1CYXNlVHgpLmdldElucygpO1xuICAgIH1cbiAgICByZXR1cm4gaW5wdXRzLm1hcCgoaW5wdXQpID0+IHtcbiAgICAgIGNvbnN0IGFtb3VudElucHV0ID0gaW5wdXQuZ2V0SW5wdXQoKSBhcyBhbnkgYXMgQW1vdW50SW5wdXQ7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpZDogdXRpbHMuY2I1OEVuY29kZShpbnB1dC5nZXRUeElEKCkpICsgSU5QVVRfU0VQQVJBVE9SICsgdXRpbHMub3V0cHV0aWR4QnVmZmVyVG9OdW1iZXIoaW5wdXQuZ2V0T3V0cHV0SWR4KCkpLFxuICAgICAgICBhZGRyZXNzOiB0aGlzLmZyb21BZGRyZXNzZXMuc29ydCgpLmpvaW4oQUREUkVTU19TRVBBUkFUT1IpLFxuICAgICAgICB2YWx1ZTogYW1vdW50SW5wdXQuZ2V0QW1vdW50KCkudG9TdHJpbmcoKSxcbiAgICAgIH07XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQXZheCB3cmFwcGVyIHRvIGNyZWF0ZSBzaWduYXR1cmUgYW5kIHJldHVybiBpdCBmb3IgY3JlZGVudGlhbHNcbiAgICogQHBhcmFtIHBydlxuICAgKiBAcmV0dXJuIGhleHN0cmluZ1xuICAgKi9cbiAgY3JlYXRlU2lnbmF0dXJlKHBydjogQnVmZmVyKTogc3RyaW5nIHtcbiAgICBjb25zdCBzaWdudmFsID0gdXRpbHMuY3JlYXRlU2lnbmF0dXJlQXZheEJ1ZmZlcihcbiAgICAgIHRoaXMuX25ldHdvcmssXG4gICAgICBCdWZmZXJBdmF4LmZyb20odGhpcy5zaWduYWJsZVBheWxvYWQpLFxuICAgICAgQnVmZmVyQXZheC5mcm9tKHBydilcbiAgICApO1xuICAgIHJldHVybiBzaWdudmFsLnRvU3RyaW5nKCdoZXgnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBleHBsYWluVHJhbnNhY3Rpb24oKTogVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiB7XG4gICAgY29uc3QgdHhKc29uID0gdGhpcy50b0pzb24oKTtcbiAgICBjb25zdCBkaXNwbGF5T3JkZXIgPSBbXG4gICAgICAnaWQnLFxuICAgICAgJ2lucHV0cycsXG4gICAgICAnb3V0cHV0QW1vdW50JyxcbiAgICAgICdjaGFuZ2VBbW91bnQnLFxuICAgICAgJ291dHB1dHMnLFxuICAgICAgJ2NoYW5nZU91dHB1dHMnLFxuICAgICAgJ2ZlZScsXG4gICAgICAndHlwZScsXG4gICAgICAnbWVtbycsXG4gICAgXTtcblxuICAgIGNvbnN0IG91dHB1dEFtb3VudCA9IHR4SnNvbi5vdXRwdXRzLnJlZHVjZSgocCwgbikgPT4gcC5hZGQobmV3IEJOKG4udmFsdWUpKSwgbmV3IEJOKDApKS50b1N0cmluZygpO1xuICAgIGNvbnN0IGNoYW5nZUFtb3VudCA9IHR4SnNvbi5jaGFuZ2VPdXRwdXRzLnJlZHVjZSgocCwgbikgPT4gcC5hZGQobmV3IEJOKG4udmFsdWUpKSwgbmV3IEJOKDApKS50b1N0cmluZygpO1xuXG4gICAgbGV0IHJld2FyZEFkZHJlc3NlcztcbiAgICBpZiAoW1RyYW5zYWN0aW9uVHlwZS5BZGRWYWxpZGF0b3IsIFRyYW5zYWN0aW9uVHlwZS5BZGREZWxlZ2F0b3JdLmluY2x1ZGVzKHR4SnNvbi50eXBlKSkge1xuICAgICAgcmV3YXJkQWRkcmVzc2VzID0gdGhpcy5yZXdhcmRBZGRyZXNzZXM7XG4gICAgICBkaXNwbGF5T3JkZXIuc3BsaWNlKDYsIDAsICdyZXdhcmRBZGRyZXNzZXMnKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgZGlzcGxheU9yZGVyLFxuICAgICAgaWQ6IHR4SnNvbi5pZCxcbiAgICAgIGlucHV0czogdHhKc29uLmlucHV0cyxcbiAgICAgIG91dHB1dHM6IHR4SnNvbi5vdXRwdXRzLm1hcCgobykgPT4gKHsgYWRkcmVzczogby5hZGRyZXNzLCBhbW91bnQ6IG8udmFsdWUgfSkpLFxuICAgICAgb3V0cHV0QW1vdW50LFxuICAgICAgY2hhbmdlT3V0cHV0czogdHhKc29uLmNoYW5nZU91dHB1dHMubWFwKChvKSA9PiAoeyBhZGRyZXNzOiBvLmFkZHJlc3MsIGFtb3VudDogby52YWx1ZSB9KSksXG4gICAgICBjaGFuZ2VBbW91bnQsXG4gICAgICByZXdhcmRBZGRyZXNzZXMsXG4gICAgICBmZWU6IHRoaXMuZmVlLFxuICAgICAgdHlwZTogdHhKc29uLnR5cGUsXG4gICAgICBtZW1vOiB0eEpzb24ubWVtbyxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIHRoaXMgdHJhbnNhY3Rpb24gaXMgYSBQIGNoYWluXG4gICAqL1xuICBnZXQgaXNUcmFuc2FjdGlvbkZvckNDaGFpbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdXRpbHMuaXNUcmFuc2FjdGlvbk9mKHRoaXMuX2F2YXhUcmFuc2FjdGlvbiwgdGhpcy5fbmV0d29yay5jQ2hhaW5CbG9ja2NoYWluSUQpO1xuICB9XG5cbiAgLyoqXG4gICAqIGdldCB0aGUgc291cmNlIGNoYWluIGlkIG9yIHVuZGVmaW5lZCBpZiBpdCdzIGEgY3Jvc3MgY2hhaW4gdHJhbnNmZXIuXG4gICAqL1xuICBnZXQgc291cmNlQ2hhaW4oKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBsZXQgYmxvY2tjaGFpbklEO1xuICAgIHN3aXRjaCAodGhpcy50eXBlKSB7XG4gICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5JbXBvcnQ6XG4gICAgICAgIGJsb2NrY2hhaW5JRCA9ICh0aGlzLmF2YXhQVHJhbnNhY3Rpb24gYXMgSW1wb3J0VHggfCBFVk1JbXBvcnRUeCkuZ2V0U291cmNlQ2hhaW4oKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5FeHBvcnQ6XG4gICAgICAgIGJsb2NrY2hhaW5JRCA9ICh0aGlzLmF2YXhQVHJhbnNhY3Rpb24gYXMgRXhwb3J0VHggfCBFVk1FeHBvcnRUeCkuZ2V0QmxvY2tjaGFpbklEKCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuYmxvY2tjaGFpbklEdG9BbGlhcyhibG9ja2NoYWluSUQpO1xuICB9XG5cbiAgLyoqXG4gICAqIGdldCB0aGUgZGVzdGluYXRpb25DaGFpbiBvciB1bmRlZmluZWQgaWYgaXQncyBhIGNyb3NzIGNoYWluIHRyYW5zZmVyLlxuICAgKi9cbiAgZ2V0IGRlc3RpbmF0aW9uQ2hhaW4oKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBsZXQgYmxvY2tjaGFpbklEO1xuICAgIHN3aXRjaCAodGhpcy50eXBlKSB7XG4gICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5JbXBvcnQ6XG4gICAgICAgIGJsb2NrY2hhaW5JRCA9ICh0aGlzLmF2YXhQVHJhbnNhY3Rpb24gYXMgSW1wb3J0VHggfCBFVk1JbXBvcnRUeCkuZ2V0QmxvY2tjaGFpbklEKCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBUcmFuc2FjdGlvblR5cGUuRXhwb3J0OlxuICAgICAgICBibG9ja2NoYWluSUQgPSAodGhpcy5hdmF4UFRyYW5zYWN0aW9uIGFzIEV4cG9ydFR4IHwgRVZNRXhwb3J0VHgpLmdldERlc3RpbmF0aW9uQ2hhaW4oKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5ibG9ja2NoYWluSUR0b0FsaWFzKGJsb2NrY2hhaW5JRCk7XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydCBhIGJsb2NrY2hhaW5JZCBidWZmZXIgdG8gc3RyaW5nIGFuZCByZXR1cm4gUCBvciBDIGFsaWFzIGlmIG1hdGNoIG9mIGFueSBvZiB0aGF0IGNoYWlucy5cbiAgICogQHBhcmFtIHtCdWZmZXJBdmF4fSBibG9ja2NoYWluSURCdWZmZXJcbiAgICogQHJldHVybiB7c3RyaW5nfSBibG9jY2hhaW5JRCBvciBhbGlhcyBpZiBleGlzdHMuXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBwcml2YXRlIGJsb2NrY2hhaW5JRHRvQWxpYXMoYmxvY2tjaGFpbklEQnVmZmVyOiBCdWZmZXJBdmF4KTogc3RyaW5nIHtcbiAgICBjb25zdCBibG9ja2NoYWluSWQgPSB1dGlscy5jYjU4RW5jb2RlKGJsb2NrY2hhaW5JREJ1ZmZlcik7XG4gICAgc3dpdGNoIChibG9ja2NoYWluSWQpIHtcbiAgICAgIGNhc2UgdGhpcy5fbmV0d29yay5jQ2hhaW5CbG9ja2NoYWluSUQ6XG4gICAgICAgIHJldHVybiAnQyc7XG4gICAgICBjYXNlIHRoaXMuX25ldHdvcmsuYmxvY2tjaGFpbklEOlxuICAgICAgICByZXR1cm4gJ1AnO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIGJsb2NrY2hhaW5JZDtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
340
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLDhDQVF5QjtBQUV6QixtQ0FRaUI7QUFHakIseUNBQXFEO0FBQ3JELG9EQUE0QjtBQVk1QixTQUFTLGdCQUFnQixDQUFDLENBQVM7SUFDakMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztBQUNuRCxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILFNBQVMseUJBQXlCLENBQUMsVUFBaUM7SUFDbEUsSUFBSSxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtRQUNuRixvQkFBb0I7UUFDcEIsT0FBTyxVQUFVLEdBQUcsRUFBRSxPQUFPO1lBQzNCLElBQUk7Z0JBQ0YsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRTtvQkFDaEMsT0FBTyxLQUFLLENBQUM7aUJBQ2Q7Z0JBQ0QsTUFBTSxHQUFHLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ3BDLE9BQU8sR0FBRyxLQUFLLE9BQU8sQ0FBQzthQUN4QjtZQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUNWLE9BQU8sS0FBSyxDQUFDO2FBQ2Q7UUFDSCxDQUFDLENBQUM7S0FDSDtTQUFNO1FBQ0wsd0JBQXdCO1FBQ3hCLE9BQU8sVUFBVSxHQUFHLEVBQUUsT0FBTztZQUMzQixJQUFJLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUM7Z0JBQUUsT0FBTyxJQUFJ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QUNuRixNQUFNO1lBQ1I7Z0JBQ0UsT0FBTyxTQUFTLENBQUM7U0FDcEI7UUFDRCxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLGdCQUFnQjtRQUNsQixJQUFJLFlBQVksQ0FBQztRQUNqQixRQUFRLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDakIsS0FBSywwQkFBZSxDQUFDLE1BQU07Z0JBQ3pCLFlBQVksR0FBSSxJQUFJLENBQUMsZ0JBQTJDLENBQUMsZUFBZSxFQUFFLENBQUM7Z0JBQ25GLE1BQU07WUFDUixLQUFLLDBCQUFlLENBQUMsTUFBTTtnQkFDekIsWUFBWSxHQUFJLElBQUksQ0FBQyxnQkFBMkMsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO2dCQUN2RixNQUFNO1lBQ1I7Z0JBQ0UsT0FBTyxTQUFTLENBQUM7U0FDcEI7UUFDRCxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSyxtQkFBbUIsQ0FBQyxrQkFBOEI7UUFDeEQsTUFBTSxZQUFZLEdBQUcsZUFBSyxDQUFDLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQzFELFFBQVEsWUFBWSxFQUFFO1lBQ3BCLEtBQUssSUFBSSxDQUFDLFFBQVEsQ0FBQyxrQkFBa0I7Z0JBQ25DLE9BQU8sR0FBRyxDQUFDO1lBQ2IsS0FBSyxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVk7Z0JBQzdCLE9BQU8sR0FBRyxDQUFDO1lBQ2I7Z0JBQ0UsT0FBTyxZQUFZLENBQUM7U0FDdkI7SUFDSCxDQUFDO0NBQ0Y7QUE1VUQsa0NBNFVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXZhbGFuY2hlTmV0d29yaywgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby9zdGF0aWNzJztcbmltcG9ydCB7XG4gIEJhc2VLZXksXG4gIEJhc2VUcmFuc2FjdGlvbixcbiAgRW50cnksXG4gIEludmFsaWRUcmFuc2FjdGlvbkVycm9yLFxuICBTaWduaW5nRXJyb3IsXG4gIFRyYW5zYWN0aW9uRmVlLFxuICBUcmFuc2FjdGlvblR5cGUsXG59IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQgeyBLZXlQYWlyIH0gZnJvbSAnLi9rZXlQYWlyJztcbmltcG9ydCB7XG4gIEJhc2VUeCxcbiAgRGVjb2RlZFV0eG9PYmosXG4gIFRyYW5zYWN0aW9uRXhwbGFuYXRpb24sXG4gIFR4LFxuICBUeERhdGEsXG4gIElOUFVUX1NFUEFSQVRPUixcbiAgQUREUkVTU19TRVBBUkFUT1IsXG59IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHsgQWRkRGVsZWdhdG9yVHgsIEFtb3VudElucHV0LCBCYXNlVHggYXMgUFZNQmFzZVR4LCBFeHBvcnRUeCwgSW1wb3J0VHggfSBmcm9tICdhdmFsYW5jaGUvZGlzdC9hcGlzL3BsYXRmb3Jtdm0nO1xuaW1wb3J0IHsgRXhwb3J0VHggYXMgRVZNRXhwb3J0VHgsIEltcG9ydFR4IGFzIEVWTUltcG9ydFR4IH0gZnJvbSAnYXZhbGFuY2hlL2Rpc3QvYXBpcy9ldm0nO1xuaW1wb3J0IHsgQk4sIEJ1ZmZlciBhcyBCdWZmZXJBdmF4IH0gZnJvbSAnYXZhbGFuY2hlJztcbmltcG9ydCB1dGlscyBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IENyZWRlbnRpYWwgfSBmcm9tICdhdmFsYW5jaGUvZGlzdC9jb21tb24nO1xuaW1wb3J0IHsgQnVmZmVyIH0gZnJvbSAnYnVmZmVyJztcblxuLy8gcmVnaW9uIHV0aWxzIHRvIHNpZ25cbmludGVyZmFjZSBzaWduYXR1cmVTZXJpYWxpemVkIHtcbiAgYnl0ZXM6IHN0cmluZztcbn1cbmludGVyZmFjZSBDaGVja1NpZ25hdHVyZSB7XG4gIChzaWdhdHVyZTogc2lnbmF0dXJlU2VyaWFsaXplZCwgYWRkcmVzc0hleDogc3RyaW5nKTogYm9vbGVhbjtcbn1cblxuZnVuY3Rpb24gaXNFbXB0eVNpZ25hdHVyZShzOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgcmV0dXJuICEhcyAmJiBzLnN0YXJ0c1dpdGgoJycucGFkU3RhcnQoOTAsICcwJykpO1xufVxuXG4vKipcbiAqIFNpZ25hdHVyZXMgYXJlIHByZXN0b3JlIGFzIGVtcHR5IGJ1ZmZlciBmb3IgaHNtIGFuZCBhZGRyZXNzIG9mIHNpZ25hciBmb3IgZmlyc3Qgc2lnbmF0dXJlLlxuICogV2hlbiBzaWduIGlzIHJlcXVpcmVkLCB0aGlzIG1ldGhvZCByZXR1cm4gdGhlIGZ1bmN0aW9uIHRoYXQgaWRlbnRpZnkgYSBzaWduYXR1cmUgdG8gYmUgcmVwbGFjZWQuXG4gKiBAcGFyYW0gc2lnbmF0dXJlcyBhbnkgc2lnbmF0dXJlcyBhcyBzYW1wbGVzIHRvIGlkZW50aWZ5IHdoaWNoIHNpZ25hdHVyZSByZXF1aXJlZCByZXBsYWNlLlxuICovXG5mdW5jdGlvbiBnZW5lcmF0ZVNlbGVjdG9yU2lnbmF0dXJlKHNpZ25hdHVyZXM6IHNpZ25hdHVyZVNlcmlhbGl6ZWRbXSk6IENoZWNrU2lnbmF0dXJlIHtcbiAgaWYgKHNpZ25hdHVyZXMubGVuZ3RoID4gMSAmJiBzaWduYXR1cmVzLmV2ZXJ5KChzaWcpID0+IGlzRW1wdHlTaWduYXR1cmUoc2lnLmJ5dGVzKSkpIHtcbiAgICAvLyBMb29rIGZvciBhZGRyZXNzLlxuICAgIHJldHVybiBmdW5jdGlvbiAoc2lnLCBhZGRyZXNzKTogYm9vbGVhbiB7XG4gICAgICB0cnkge1xuICAgICAgICBpZiAoIWlzRW1wdHlTaWduYXR1cmUoc2lnLmJ5dGVzKSkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBwdWIgPSBzaWcuYnl0ZXMuc3Vic3RyaW5nKDkwKTtcbiAgICAgICAgcmV0dXJuIHB1YiA9PT0gYWRkcmVzcztcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH07XG4gIH0gZWxzZSB7XG4gICAgLy8gTG9vayBmb3IgZW1wdHkgc3RyaW5nXG4gICAgcmV0dXJuIGZ1bmN0aW9uIChzaWcsIGFkZHJlc3MpOiBib29sZWFuIHtcbiAgICAgIGlmIChpc0VtcHR5U2lnbmF0dXJlKHNpZy5ieXRlcykpIHJldHVybiB0cnVlO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH07XG4gIH1cbn1cbi8vIGVuZCByZWdpb24gdXRpbHMgZm9yIHNpZ25cblxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uIGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uIHtcbiAgcHJvdGVjdGVkIF9hdmF4VHJhbnNhY3Rpb246IFR4O1xuICBwdWJsaWMgX3R5cGU6IFRyYW5zYWN0aW9uVHlwZTtcbiAgcHVibGljIF9uZXR3b3JrOiBBdmFsYW5jaGVOZXR3b3JrO1xuICBwdWJsaWMgX25ldHdvcmtJRDogbnVtYmVyO1xuICBwdWJsaWMgX2Fzc2V0SWQ6IEJ1ZmZlckF2YXg7XG4gIHB1YmxpYyBfYmxvY2tjaGFpbklEOiBCdWZmZXJBdmF4O1xuICBwdWJsaWMgX3RocmVzaG9sZCA9IDI7XG4gIHB1YmxpYyBfbG9ja3RpbWU6IEJOID0gbmV3IEJOKDApO1xuICBwdWJsaWMgX2Zyb21BZGRyZXNzZXM6IEJ1ZmZlckF2YXhbXSA9IFtdO1xuICBwdWJsaWMgX3Jld2FyZEFkZHJlc3NlczogQnVmZmVyQXZheFtdO1xuICBwdWJsaWMgX3V0eG9zOiBEZWNvZGVkVXR4b09ialtdID0gW107XG4gIHB1YmxpYyBfdG86IEJ1ZmZlckF2YXhbXTtcbiAgcHVibGljIF9mZWU6IFBhcnRpYWw8VHJhbnNhY3Rpb25GZWU+ID0ge307XG5cbiAgY29uc3RydWN0b3IoY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihjb2luQ29uZmlnKTtcbiAgICB0aGlzLl9uZXR3b3JrID0gY29pbkNvbmZpZy5uZXR3b3JrIGFzIEF2YWxhbmNoZU5ldHdvcms7XG4gICAgdGhpcy5fYXNzZXRJZCA9IHV0aWxzLmNiNThEZWNvZGUodGhpcy5fbmV0d29yay5hdmF4QXNzZXRJRCk7XG4gICAgdGhpcy5fYmxvY2tjaGFpbklEID0gdXRpbHMuY2I1OERlY29kZSh0aGlzLl9uZXR3b3JrLmJsb2NrY2hhaW5JRCk7XG4gICAgdGhpcy5fbmV0d29ya0lEID0gdGhpcy5fbmV0d29yay5uZXR3b3JrSUQ7XG4gIH1cblxuICBnZXQgYXZheFBUcmFuc2FjdGlvbigpOiBCYXNlVHgge1xuICAgIHJldHVybiB0aGlzLl9hdmF4VHJhbnNhY3Rpb24uZ2V0VW5zaWduZWRUeCgpLmdldFRyYW5zYWN0aW9uKCk7XG4gIH1cblxuICBnZXQgc2lnbmF0dXJlKCk6IHN0cmluZ1tdIHtcbiAgICBpZiAodGhpcy5jcmVkZW50aWFscy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG4gICAgY29uc3Qgb2JqOiBhbnkgPSB0aGlzLmNyZWRlbnRpYWxzWzBdLnNlcmlhbGl6ZSgpO1xuICAgIHJldHVybiBvYmouc2lnQXJyYXkubWFwKChzKSA9PiBzLmJ5dGVzKS5maWx0ZXIoKHMpID0+ICFpc0VtcHR5U2lnbmF0dXJlKHMpKTtcbiAgfVxuXG4gIGdldCBjcmVkZW50aWFscygpOiBDcmVkZW50aWFsW10ge1xuICAgIC8vIGl0IHNob3VsZCBiZSB0aGlzLl9hdmF4cFRyYW5zYWN0aW9uPy5nZXRDcmVkZW50aWFscygpLCBidXQgRVZNVHggZG9lc24ndCBoYXZlIGl0XG4gICAgcmV0dXJuICh0aGlzLl9hdmF4VHJhbnNhY3Rpb24gYXMgYW55KT8uY3JlZGVudGlhbHM7XG4gIH1cblxuICBnZXQgaGFzQ3JlZGVudGlhbHMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuY3JlZGVudGlhbHMgIT09IHVuZGVmaW5lZCAmJiB0aGlzLmNyZWRlbnRpYWxzLmxlbmd0aCA+IDA7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgY2FuU2lnbih7IGtleSB9OiBCYXNlS2V5KTogYm9vbGVhbiB7XG4gICAgLy8gVE9ETyhCRy01NjcwMCk6ICBJbXByb3ZlIGNhblNpZ24gYnkgY2hlY2sgaW4gYWRkcmVzc2VzIGluIGVtcHR5IGNyZWRlbnRpYWxzIG1hdGNoIHNpZ25lclxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgLyoqXG4gICAqIFNpZ24gYSBhdmF4cCB0cmFuc2FjdGlvbiBhbmQgdXBkYXRlIHRoZSB0cmFuc2FjdGlvbiBoZXhcbiAgICogdmFsaWRhdG9yLCBkZWxlZ2F0b3IsIGltcG9ydCwgZXhwb3J0cyBleHRlbmQgYmFzZVR4XG4gICAqIHVuc2lnbmVkVHg6IFVuc2lnbmVkVHggPSBuZXcgVW5zaWduZWRUeChiYXNlVHgpICAoYmFzZVR4ID0gYWRkVmFsaWRhdG9yVHgpXG4gICAqIGNvbnN0IHR4OiBUeCA9IHVuc2lnbmVkVHguc2lnbihrZXljaGFpbikgKHR4IGlzIHR5cGUgc3RhbmRhcmQgc2lnbmVkIHR4KVxuICAgKiBnZXQgYmFzZVR4IHRoZW4gY3JlYXRlIG5ldyB1bnNpZ25lZFR4IHRoZW4gc2lnblxuICAgKlxuICAgKiBAcGFyYW0ge0tleVBhaXJ9IGtleVBhaXJcbiAgICovXG4gIHNpZ24oa2V5UGFpcjogS2V5UGFpcik6IHZvaWQge1xuICAgIGNvbnN0IHBydiA9IGtleVBhaXIuZ2V0UHJpdmF0ZUtleSgpO1xuICAgIGNvbnN0IGFkZHJlc3NIZXggPSBrZXlQYWlyLmdldEFkZHJlc3NCdWZmZXIoKS50b1N0cmluZygnaGV4Jyk7XG4gICAgaWYgKCFwcnYpIHtcbiAgICAgIHRocm93IG5ldyBTaWduaW5nRXJyb3IoJ01pc3NpbmcgcHJpdmF0ZSBrZXknKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLmF2YXhQVHJhbnNhY3Rpb24pIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignZW1wdHkgdHJhbnNhY3Rpb24gdG8gc2lnbicpO1xuICAgIH1cbiAgICBpZiAoIXRoaXMuaGFzQ3JlZGVudGlhbHMpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignZW1wdHkgY3JlZGVudGlhbHMgdG8gc2lnbicpO1xuICAgIH1cbiAgICBjb25zdCBzaWduYXR1cmUgPSB0aGlzLmNyZWF0ZVNpZ25hdHVyZShwcnYpO1xuICAgIGxldCBjaGVja1NpZ246IENoZWNrU2lnbmF0dXJlIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuY3JlZGVudGlhbHMuZm9yRWFjaCgoYykgPT4ge1xuICAgICAgY29uc3QgY3M6IGFueSA9IGMuc2VyaWFsaXplKCk7XG4gICAgICBpZiAoY2hlY2tTaWduID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgY2hlY2tTaWduID0gZ2VuZXJhdGVTZWxlY3RvclNpZ25hdHVyZShjcy5zaWdBcnJheSk7XG4gICAgICB9XG4gICAgICBsZXQgZmluZCA9IGZhbHNlO1xuICAgICAgY3Muc2lnQXJyYXkuZm9yRWFjaCgoc2lnKSA9PiB7XG4gICAgICAgIGlmIChjaGVja1NpZ24gJiYgY2hlY2tTaWduKHNpZywgYWRkcmVzc0hleCkpIHtcbiAgICAgICAgICBzaWcuYnl0ZXMgPSBzaWduYXR1cmU7XG4gICAgICAgICAgZmluZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgaWYgKCFmaW5kKSB0aHJvdyBuZXcgU2lnbmluZ0Vycm9yKCdQcml2YXRlIGtleSBjYW5ub3Qgc2lnbiB0aGUgdHJhbnNhY3Rpb24nKTtcbiAgICAgIGMuZGVzZXJpYWxpemUoY3MpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIC8qKlxuICAgKiBzaG91bGQgYmUgb2Ygc2lnbmVkVHggZG9pbmcgdGhpcyB3aXRoIGJhc2VUeFxuICAgKi9cbiAgdG9Ccm9hZGNhc3RGb3JtYXQoKTogc3RyaW5nIHtcbiAgICBpZiAoIXRoaXMuYXZheFBUcmFuc2FjdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdFbXB0eSB0cmFuc2FjdGlvbiBkYXRhJyk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLl9hdmF4VHJhbnNhY3Rpb24udG9TdHJpbmdIZXgoKTtcbiAgfVxuXG4gIC8vIHR5cGVzIC0gc3Rha2luZ1RyYW5zYWN0aW9uLCBpbXBvcnQsIGV4cG9ydFxuICB0b0pzb24oKTogVHhEYXRhIHtcbiAgICBpZiAoIXRoaXMuYXZheFBUcmFuc2FjdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdFbXB0eSB0cmFuc2FjdGlvbiBkYXRhJyk7XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICBpZDogdGhpcy5pZCxcbiAgICAgIGlucHV0czogdGhpcy5pbnB1dHMsXG4gICAgICBmcm9tQWRkcmVzc2VzOiB0aGlzLmZyb21BZGRyZXNzZXMsXG4gICAgICB0aHJlc2hvbGQ6IHRoaXMuX3RocmVzaG9sZCxcbiAgICAgIGxvY2t0aW1lOiB0aGlzLl9sb2NrdGltZS50b1N0cmluZygpLFxuICAgICAgdHlwZTogdGhpcy50eXBlLFxuICAgICAgc2lnbmF0dXJlczogdGhpcy5zaWduYXR1cmUsXG4gICAgICBvdXRwdXRzOiB0aGlzLm91dHB1dHMsXG4gICAgICBjaGFuZ2VPdXRwdXRzOiB0aGlzLmNoYW5nZU91dHB1dHMsXG4gICAgICBzb3VyY2VDaGFpbjogdGhpcy5zb3VyY2VDaGFpbixcbiAgICAgIGRlc3RpbmF0aW9uQ2hhaW46IHRoaXMuZGVzdGluYXRpb25DaGFpbixcbiAgICB9O1xuICB9XG5cbiAgc2V0VHJhbnNhY3Rpb24odHg6IFR4KTogdm9pZCB7XG4gICAgdGhpcy5fYXZheFRyYW5zYWN0aW9uID0gdHg7XG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSB0cmFuc2FjdGlvbiB0eXBlXG4gICAqXG4gICAqIEBwYXJhbSB7VHJhbnNhY3Rpb25UeXBlfSB0cmFuc2FjdGlvblR5cGUgVGhlIHRyYW5zYWN0aW9uIHR5cGUgdG8gYmUgc2V0XG4gICAqL1xuICBzZXRUcmFuc2FjdGlvblR5cGUodHJhbnNhY3Rpb25UeXBlOiBUcmFuc2FjdGlvblR5cGUpOiB2b2lkIHtcbiAgICB0aGlzLl90eXBlID0gdHJhbnNhY3Rpb25UeXBlO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHBvcnRpb24gb2YgdGhlIHRyYW5zYWN0aW9uIHRoYXQgbmVlZHMgdG8gYmUgc2lnbmVkIGluIEJ1ZmZlciBmb3JtYXQuXG4gICAqIE9ubHkgbmVlZGVkIGZvciBjb2lucyB0aGF0IHN1cHBvcnQgYWRkaW5nIHNpZ25hdHVyZXMgZGlyZWN0bHkgKGUuZy4gVFNTKS5cbiAgICovXG4gIGdldCBzaWduYWJsZVBheWxvYWQoKTogQnVmZmVyIHtcbiAgICByZXR1cm4gdXRpbHMuc2hhMjU2KHRoaXMuX2F2YXhUcmFuc2FjdGlvbi5nZXRVbnNpZ25lZFR4KCkudG9CdWZmZXIoKSk7XG4gIH1cblxuICBnZXQgaWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdXRpbHMuY2I1OEVuY29kZShCdWZmZXJBdmF4LmZyb20odXRpbHMuc2hhMjU2KHRoaXMuX2F2YXhUcmFuc2FjdGlvbi50b0J1ZmZlcigpKSkpO1xuICB9XG5cbiAgZ2V0IGZyb21BZGRyZXNzZXMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLl9mcm9tQWRkcmVzc2VzLm1hcCgoYSkgPT4gdXRpbHMuYWRkcmVzc1RvU3RyaW5nKHRoaXMuX25ldHdvcmsuaHJwLCB0aGlzLl9uZXR3b3JrLmFsaWFzLCBhKSk7XG4gIH1cblxuICBnZXQgcmV3YXJkQWRkcmVzc2VzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdGhpcy5fcmV3YXJkQWRkcmVzc2VzLm1hcCgoYSkgPT4gdXRpbHMuYWRkcmVzc1RvU3RyaW5nKHRoaXMuX25ldHdvcmsuaHJwLCB0aGlzLl9uZXR3b3JrLmFsaWFzLCBhKSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBsaXN0IG9mIG91dHB1dHMuIEFtb3VudHMgYXJlIGV4cHJlc3NlZCBpbiBhYnNvbHV0ZSB2YWx1ZS5cbiAgICovXG4gIGdldCBvdXRwdXRzKCk6IEVudHJ5W10ge1xuICAgIHN3aXRjaCAodGhpcy50eXBlKSB7XG4gICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5JbXBvcnQ6XG4gICAgICAgIHJldHVybiAodGhpcy5hdmF4UFRyYW5zYWN0aW9uIGFzIEltcG9ydFR4IHwgRVZNSW1wb3J0VHgpLmdldE91dHMoKS5tYXAodXRpbHMubWFwT3V0cHV0VG9FbnRyeSh0aGlzLl9uZXR3b3JrKSk7XG4gICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5FeHBvcnQ6XG4gICAgICAgIGlmICh1dGlscy5pc1RyYW5zYWN0aW9uT2YodGhpcy5fYXZheFRyYW5zYWN0aW9uLCB0aGlzLl9uZXR3b3JrLmNDaGFpbkJsb2NrY2hhaW5JRCkpIHtcbiAgICAgICAgICByZXR1cm4gKHRoaXMuYXZheFBUcmFuc2FjdGlvbiBhcyBFVk1FeHBvcnRUeCkuZ2V0RXhwb3J0ZWRPdXRwdXRzKCkubWFwKHV0aWxzLm1hcE91dHB1dFRvRW50cnkodGhpcy5fbmV0d29yaykpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiAodGhpcy5hdmF4UFRyYW5zYWN0aW9uIGFzIEV4cG9ydFR4KS5nZXRFeHBvcnRPdXRwdXRzKCkubWFwKHV0aWxzLm1hcE91dHB1dFRvRW50cnkodGhpcy5fbmV0d29yaykpO1xuICAgICAgICB9XG4gICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5BZGREZWxlZ2F0b3I6XG4gICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5BZGRWYWxpZGF0b3I6XG4gICAgICAgIC8vIEdldCBzdGFrZWQgb3V0cHV0c1xuICAgICAgICBjb25zdCBhZGRWYWxpZGF0b3JUeCA9IHRoaXMuYXZheFBUcmFuc2FjdGlvbiBhcyBBZGREZWxlZ2F0b3JUeDtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBhZGRyZXNzOiBhZGRWYWxpZGF0b3JUeC5nZXROb2RlSURTdHJpbmcoKSxcbiAgICAgICAgICAgIHZhbHVlOiBhZGRWYWxpZGF0b3JUeC5nZXRTdGFrZUFtb3VudCgpLnRvU3RyaW5nKCksXG4gICAgICAgICAgfSxcbiAgICAgICAgXTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBbXTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR2V0IGEgVHJhbnNhc2N0aW9uIEZlZS5cbiAgICovXG4gIGdldCBmZWUoKTogVHJhbnNhY3Rpb25GZWUge1xuICAgIHJldHVybiB7IGZlZTogJzAnLCAuLi50aGlzLl9mZWUgfTtcbiAgfVxuXG4gIGdldCBjaGFuZ2VPdXRwdXRzKCk6IEVudHJ5W10ge1xuICAgIC8vIEMtY2hhaW4gdHggYWRuIEltcG9ydCBUeHMgZG9uJ3QgaGF2ZSBjaGFuZ2Ugb3V0cHV0c1xuICAgIGlmIChcbiAgICAgIHRoaXMudHlwZSA9PT0gVHJhbnNhY3Rpb25UeXBlLkltcG9ydCB8fFxuICAgICAgdXRpbHMuaXNUcmFuc2FjdGlvbk9mKHRoaXMuX2F2YXhUcmFuc2FjdGlvbiwgdGhpcy5fbmV0d29yay5jQ2hhaW5CbG9ja2NoYWluSUQpXG4gICAgKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuICAgIC8vIGdlbmVyYWwgc3VwcG9ydCBhbnkgdHJhbnNhY3Rpb24gdHlwZSwgYnV0IGl0J3Mgc2NvcGVkIHlldFxuICAgIHJldHVybiAodGhpcy5hdmF4UFRyYW5zYWN0aW9uIGFzIFBWTUJhc2VUeCkuZ2V0T3V0cygpLm1hcCh1dGlscy5tYXBPdXRwdXRUb0VudHJ5KHRoaXMuX25ldHdvcmspKTtcbiAgfVxuXG4gIGdldCBpbnB1dHMoKTogRW50cnlbXSB7XG4gICAgbGV0IGlucHV0cztcbiAgICBzd2l0Y2ggKHRoaXMudHlwZSkge1xuICAgICAgY2FzZSBUcmFuc2FjdGlvblR5cGUuSW1wb3J0OlxuICAgICAgICBpbnB1dHMgPSAodGhpcy5hdmF4UFRyYW5zYWN0aW9uIGFzIEltcG9ydFR4IHwgRVZNSW1wb3J0VHgpLmdldEltcG9ydElucHV0cygpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLkV4cG9ydDpcbiAgICAgICAgaWYgKHV0aWxzLmlzVHJhbnNhY3Rpb25PZih0aGlzLl9hdmF4VHJhbnNhY3Rpb24sIHRoaXMuX25ldHdvcmsuY0NoYWluQmxvY2tjaGFpbklEKSkge1xuICAgICAgICAgIHJldHVybiAodGhpcy5hdmF4UFRyYW5zYWN0aW9uIGFzIEVWTUV4cG9ydFR4KS5nZXRJbnB1dHMoKS5tYXAoKGV2bUlucHV0KSA9PiAoe1xuICAgICAgICAgICAgYWRkcmVzczogJzB4JyArIGV2bUlucHV0LmdldEFkZHJlc3NTdHJpbmcoKSxcbiAgICAgICAgICAgIHZhbHVlOiBuZXcgQk4oKGV2bUlucHV0IGFzIGFueSkuYW1vdW50KS50b1N0cmluZygpLFxuICAgICAgICAgICAgbm9uY2U6IGV2bUlucHV0LmdldE5vbmNlKCkudG9OdW1iZXIoKSxcbiAgICAgICAgICB9KSk7XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXRzID0gKHRoaXMuYXZheFBUcmFuc2FjdGlvbiBhcyBQVk1CYXNlVHgpLmdldElucygpO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGlucHV0cyA9ICh0aGlzLmF2YXhQVHJhbnNhY3Rpb24gYXMgUFZNQmFzZVR4KS5nZXRJbnMoKTtcbiAgICB9XG4gICAgcmV0dXJuIGlucHV0cy5tYXAoKGlucHV0KSA9PiB7XG4gICAgICBjb25zdCBhbW91bnRJbnB1dCA9IGlucHV0LmdldElucHV0KCkgYXMgYW55IGFzIEFtb3VudElucHV0O1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaWQ6IHV0aWxzLmNiNThFbmNvZGUoaW5wdXQuZ2V0VHhJRCgpKSArIElOUFVUX1NFUEFSQVRPUiArIHV0aWxzLm91dHB1dGlkeEJ1ZmZlclRvTnVtYmVyKGlucHV0LmdldE91dHB1dElkeCgpKSxcbiAgICAgICAgYWRkcmVzczogdGhpcy5mcm9tQWRkcmVzc2VzLnNvcnQoKS5qb2luKEFERFJFU1NfU0VQQVJBVE9SKSxcbiAgICAgICAgdmFsdWU6IGFtb3VudElucHV0LmdldEFtb3VudCgpLnRvU3RyaW5nKCksXG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEF2YXggd3JhcHBlciB0byBjcmVhdGUgc2lnbmF0dXJlIGFuZCByZXR1cm4gaXQgZm9yIGNyZWRlbnRpYWxzXG4gICAqIEBwYXJhbSBwcnZcbiAgICogQHJldHVybiBoZXhzdHJpbmdcbiAgICovXG4gIGNyZWF0ZVNpZ25hdHVyZShwcnY6IEJ1ZmZlcik6IHN0cmluZyB7XG4gICAgY29uc3Qgc2lnbnZhbCA9IHV0aWxzLmNyZWF0ZVNpZ25hdHVyZUF2YXhCdWZmZXIoXG4gICAgICB0aGlzLl9uZXR3b3JrLFxuICAgICAgQnVmZmVyQXZheC5mcm9tKHRoaXMuc2lnbmFibGVQYXlsb2FkKSxcbiAgICAgIEJ1ZmZlckF2YXguZnJvbShwcnYpXG4gICAgKTtcbiAgICByZXR1cm4gc2lnbnZhbC50b1N0cmluZygnaGV4Jyk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZXhwbGFpblRyYW5zYWN0aW9uKCk6IFRyYW5zYWN0aW9uRXhwbGFuYXRpb24ge1xuICAgIGNvbnN0IHR4SnNvbiA9IHRoaXMudG9Kc29uKCk7XG4gICAgY29uc3QgZGlzcGxheU9yZGVyID0gWydpZCcsICdpbnB1dHMnLCAnb3V0cHV0QW1vdW50JywgJ2NoYW5nZUFtb3VudCcsICdvdXRwdXRzJywgJ2NoYW5nZU91dHB1dHMnLCAnZmVlJywgJ3R5cGUnXTtcblxuICAgIGNvbnN0IG91dHB1dEFtb3VudCA9IHR4SnNvbi5vdXRwdXRzLnJlZHVjZSgocCwgbikgPT4gcC5hZGQobmV3IEJOKG4udmFsdWUpKSwgbmV3IEJOKDApKS50b1N0cmluZygpO1xuICAgIGNvbnN0IGNoYW5nZUFtb3VudCA9IHR4SnNvbi5jaGFuZ2VPdXRwdXRzLnJlZHVjZSgocCwgbikgPT4gcC5hZGQobmV3IEJOKG4udmFsdWUpKSwgbmV3IEJOKDApKS50b1N0cmluZygpO1xuXG4gICAgbGV0IHJld2FyZEFkZHJlc3NlcztcbiAgICBpZiAoW1RyYW5zYWN0aW9uVHlwZS5BZGRWYWxpZGF0b3IsIFRyYW5zYWN0aW9uVHlwZS5BZGREZWxlZ2F0b3JdLmluY2x1ZGVzKHR4SnNvbi50eXBlKSkge1xuICAgICAgcmV3YXJkQWRkcmVzc2VzID0gdGhpcy5yZXdhcmRBZGRyZXNzZXM7XG4gICAgICBkaXNwbGF5T3JkZXIuc3BsaWNlKDYsIDAsICdyZXdhcmRBZGRyZXNzZXMnKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgZGlzcGxheU9yZGVyLFxuICAgICAgaWQ6IHR4SnNvbi5pZCxcbiAgICAgIGlucHV0czogdHhKc29uLmlucHV0cyxcbiAgICAgIG91dHB1dHM6IHR4SnNvbi5vdXRwdXRzLm1hcCgobykgPT4gKHsgYWRkcmVzczogby5hZGRyZXNzLCBhbW91bnQ6IG8udmFsdWUgfSkpLFxuICAgICAgb3V0cHV0QW1vdW50LFxuICAgICAgY2hhbmdlT3V0cHV0czogdHhKc29uLmNoYW5nZU91dHB1dHMubWFwKChvKSA9PiAoeyBhZGRyZXNzOiBvLmFkZHJlc3MsIGFtb3VudDogby52YWx1ZSB9KSksXG4gICAgICBjaGFuZ2VBbW91bnQsXG4gICAgICByZXdhcmRBZGRyZXNzZXMsXG4gICAgICBmZWU6IHRoaXMuZmVlLFxuICAgICAgdHlwZTogdHhKc29uLnR5cGUsXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiB0aGlzIHRyYW5zYWN0aW9uIGlzIGEgUCBjaGFpblxuICAgKi9cbiAgZ2V0IGlzVHJhbnNhY3Rpb25Gb3JDQ2hhaW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHV0aWxzLmlzVHJhbnNhY3Rpb25PZih0aGlzLl9hdmF4VHJhbnNhY3Rpb24sIHRoaXMuX25ldHdvcmsuY0NoYWluQmxvY2tjaGFpbklEKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgdGhlIHNvdXJjZSBjaGFpbiBpZCBvciB1bmRlZmluZWQgaWYgaXQncyBhIGNyb3NzIGNoYWluIHRyYW5zZmVyLlxuICAgKi9cbiAgZ2V0IHNvdXJjZUNoYWluKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgbGV0IGJsb2NrY2hhaW5JRDtcbiAgICBzd2l0Y2ggKHRoaXMudHlwZSkge1xuICAgICAgY2FzZSBUcmFuc2FjdGlvblR5cGUuSW1wb3J0OlxuICAgICAgICBibG9ja2NoYWluSUQgPSAodGhpcy5hdmF4UFRyYW5zYWN0aW9uIGFzIEltcG9ydFR4IHwgRVZNSW1wb3J0VHgpLmdldFNvdXJjZUNoYWluKCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBUcmFuc2FjdGlvblR5cGUuRXhwb3J0OlxuICAgICAgICBibG9ja2NoYWluSUQgPSAodGhpcy5hdmF4UFRyYW5zYWN0aW9uIGFzIEV4cG9ydFR4IHwgRVZNRXhwb3J0VHgpLmdldEJsb2NrY2hhaW5JRCgpO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmJsb2NrY2hhaW5JRHRvQWxpYXMoYmxvY2tjaGFpbklEKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgdGhlIGRlc3RpbmF0aW9uQ2hhaW4gb3IgdW5kZWZpbmVkIGlmIGl0J3MgYSBjcm9zcyBjaGFpbiB0cmFuc2Zlci5cbiAgICovXG4gIGdldCBkZXN0aW5hdGlvbkNoYWluKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgbGV0IGJsb2NrY2hhaW5JRDtcbiAgICBzd2l0Y2ggKHRoaXMudHlwZSkge1xuICAgICAgY2FzZSBUcmFuc2FjdGlvblR5cGUuSW1wb3J0OlxuICAgICAgICBibG9ja2NoYWluSUQgPSAodGhpcy5hdmF4UFRyYW5zYWN0aW9uIGFzIEltcG9ydFR4IHwgRVZNSW1wb3J0VHgpLmdldEJsb2NrY2hhaW5JRCgpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLkV4cG9ydDpcbiAgICAgICAgYmxvY2tjaGFpbklEID0gKHRoaXMuYXZheFBUcmFuc2FjdGlvbiBhcyBFeHBvcnRUeCB8IEVWTUV4cG9ydFR4KS5nZXREZXN0aW5hdGlvbkNoYWluKCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuYmxvY2tjaGFpbklEdG9BbGlhcyhibG9ja2NoYWluSUQpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnQgYSBibG9ja2NoYWluSWQgYnVmZmVyIHRvIHN0cmluZyBhbmQgcmV0dXJuIFAgb3IgQyBhbGlhcyBpZiBtYXRjaCBvZiBhbnkgb2YgdGhhdCBjaGFpbnMuXG4gICAqIEBwYXJhbSB7QnVmZmVyQXZheH0gYmxvY2tjaGFpbklEQnVmZmVyXG4gICAqIEByZXR1cm4ge3N0cmluZ30gYmxvY2NoYWluSUQgb3IgYWxpYXMgaWYgZXhpc3RzLlxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgcHJpdmF0ZSBibG9ja2NoYWluSUR0b0FsaWFzKGJsb2NrY2hhaW5JREJ1ZmZlcjogQnVmZmVyQXZheCk6IHN0cmluZyB7XG4gICAgY29uc3QgYmxvY2tjaGFpbklkID0gdXRpbHMuY2I1OEVuY29kZShibG9ja2NoYWluSURCdWZmZXIpO1xuICAgIHN3aXRjaCAoYmxvY2tjaGFpbklkKSB7XG4gICAgICBjYXNlIHRoaXMuX25ldHdvcmsuY0NoYWluQmxvY2tjaGFpbklEOlxuICAgICAgICByZXR1cm4gJ0MnO1xuICAgICAgY2FzZSB0aGlzLl9uZXR3b3JrLmJsb2NrY2hhaW5JRDpcbiAgICAgICAgcmV0dXJuICdQJztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBibG9ja2NoYWluSWQ7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -56,13 +56,6 @@ export declare abstract class TransactionBuilder extends BaseTransactionBuilder
|
|
|
56
56
|
* @param {DecodedUtxoObj[]} list of UTXOS
|
|
57
57
|
*/
|
|
58
58
|
utxos(value: DecodedUtxoObj[]): this;
|
|
59
|
-
/**
|
|
60
|
-
*
|
|
61
|
-
* @param value Optional Buffer for the memo
|
|
62
|
-
* @returns value Buffer for the memo
|
|
63
|
-
* set using Buffer.from("message")
|
|
64
|
-
*/
|
|
65
|
-
memo(value: string): this;
|
|
66
59
|
/**
|
|
67
60
|
* Getter for know if build should sign
|
|
68
61
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transactionBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilder.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EACL,WAAW,EACX,OAAO,EACP,sBAAsB,EACtB,eAAe,EAEf,eAAe,EAChB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,EAAE,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,WAAW,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAG7C,8BAAsB,kBAAmB,SAAQ,sBAAsB;IACrE,OAAO,CAAC,YAAY,CAAc;IAC3B,OAAO,EAAE,OAAO,EAAE,CAAM;IAC/B,SAAS,CAAC,aAAa,UAAS;gBAEpB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C;;;;;OAKG;IACH,WAAW,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"transactionBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilder.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EACL,WAAW,EACX,OAAO,EACP,sBAAsB,EACtB,eAAe,EAEf,eAAe,EAChB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,EAAE,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,WAAW,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAG7C,8BAAsB,kBAAmB,SAAQ,sBAAsB;IACrE,OAAO,CAAC,YAAY,CAAc;IAC3B,OAAO,EAAE,OAAO,EAAE,CAAM;IAC/B,SAAS,CAAC,aAAa,UAAS;gBAEpB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C;;;;;OAKG;IACH,WAAW,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI;IAYzB,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW;IAOjE,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;IAS3D;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,oBAAoB,IAAI,IAAI;IAG/C;;;;OAIG;IACI,WAAW,CAAC,aAAa,UAAO,GAAG,IAAI;IAK9C;;;;OAIG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAM9B;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAMtC;;;OAGG;IACH,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAMjD;;;;;OAKG;IACH,KAAK,CAAC,KAAK,EAAE,cAAc,EAAE,GAAG,IAAI;IAMpC;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,kBAAkB;IAClB,SAAS,KAAK,WAAW,IAAI,WAAW,CAEvC;IAED,SAAS,KAAK,WAAW,CAAC,WAAW,EAAE,WAAW,EAEjD;IAED,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,EAAE,GAAG,EAAE,EAAE,OAAO,GAAG,eAAe;IAK/D,SAAS,CAAC,QAAQ,KAAK,eAAe,IAAI,eAAe,CAAC;IAK1D;;;OAGG;IACH,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAM1C;;;OAGG;IACH,gBAAgB,CAAC,QAAQ,EAAE,EAAE,GAAG,IAAI;IAMpC,kBAAkB;IAClB,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI;IAMnE,kBAAkB;IAClB,WAAW,CAAC,EAAE,GAAG,EAAE,EAAE,OAAO,GAAG,IAAI;IAMnC;;;;;OAKG;IACH,sBAAsB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAIpD,kBAAkB;IAClB,mBAAmB,CAAC,WAAW,CAAC,EAAE,WAAW,GAAG,IAAI;IAIpD,kBAAkB;IAClB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAMrC;;;OAGG;IACH,aAAa,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI;IAO7C;;;OAGG;IACH,YAAY,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;IAMzC;;;OAGG;IACH,cAAc,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI;IAMhC;;;OAGG;IACH,eAAe,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI;CAO3C"}
|
|
@@ -29,10 +29,6 @@ class TransactionBuilder extends sdk_core_1.BaseTransactionBuilder {
|
|
|
29
29
|
!baseTx.getBlockchainID().equals(this._transaction._blockchainID)) {
|
|
30
30
|
throw new Error('Network or blockchain is not equals');
|
|
31
31
|
}
|
|
32
|
-
// EVMBaseTx has not memo.
|
|
33
|
-
if ('getMemo' in baseTx) {
|
|
34
|
-
this._transaction._memo = baseTx.getMemo();
|
|
35
|
-
}
|
|
36
32
|
this._transaction.setTransaction(tx);
|
|
37
33
|
return this;
|
|
38
34
|
}
|
|
@@ -102,16 +98,6 @@ class TransactionBuilder extends sdk_core_1.BaseTransactionBuilder {
|
|
|
102
98
|
this._transaction._utxos = value;
|
|
103
99
|
return this;
|
|
104
100
|
}
|
|
105
|
-
/**
|
|
106
|
-
*
|
|
107
|
-
* @param value Optional Buffer for the memo
|
|
108
|
-
* @returns value Buffer for the memo
|
|
109
|
-
* set using Buffer.from("message")
|
|
110
|
-
*/
|
|
111
|
-
memo(value) {
|
|
112
|
-
this._transaction._memo = utils_1.default.stringToBuffer(value);
|
|
113
|
-
return this;
|
|
114
|
-
}
|
|
115
101
|
/**
|
|
116
102
|
* Getter for know if build should sign
|
|
117
103
|
*/
|
|
@@ -221,4 +207,4 @@ class TransactionBuilder extends sdk_core_1.BaseTransactionBuilder {
|
|
|
221
207
|
}
|
|
222
208
|
}
|
|
223
209
|
exports.TransactionBuilder = TransactionBuilder;
|
|
224
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2FjdGlvbkJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRUEsOENBT3lCO0FBQ3pCLCtDQUE0QztBQUM1Qyx1Q0FBb0M7QUFDcEMseUNBQXFEO0FBQ3JELG9EQUE0QjtBQUU1QiwrREFBNkQ7QUFFN0QsTUFBc0Isa0JBQW1CLFNBQVEsaUNBQXNCO0lBS3JFLFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBSmQsWUFBTyxHQUFjLEVBQUUsQ0FBQztRQUNyQixrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUk5QixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUkseUJBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxXQUFXLENBQUMsRUFBTTtRQUNoQixNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUMsYUFBYSxFQUFFLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDbkQsSUFDRSxNQUFNLENBQUMsWUFBWSxFQUFFLEtBQUssSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVO1lBQ3RELENBQUMsTUFBTSxDQUFDLGVBQWUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxFQUNqRTtZQUNBLE1BQU0sSUFBSSxLQUFLLENBQUMscUNBQXFDLENBQUMsQ0FBQztTQUN4RDtRQUNELDBCQUEwQjtRQUMxQixJQUFJLFNBQVMsSUFBSSxNQUFNLEVBQUU7WUFDdkIsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO1NBQzVDO1FBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDckMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQs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RTtZQUN6QixNQUFNLElBQUksZ0NBQXFCLENBQUMsMkJBQTJCLENBQUMsQ0FBQztTQUM5RDtJQUNILENBQUM7Q0FHRjtBQXJQRCxnREFxUEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IEJpZ051bWJlciBmcm9tICdiaWdudW1iZXIuanMnO1xuaW1wb3J0IHtcbiAgQmFzZUFkZHJlc3MsXG4gIEJhc2VLZXksXG4gIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIFRyYW5zYWN0aW9uVHlwZSxcbiAgQnVpbGRUcmFuc2FjdGlvbkVycm9yLFxuICBCYXNlVHJhbnNhY3Rpb24sXG59IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgS2V5UGFpciB9IGZyb20gJy4va2V5UGFpcic7XG5pbXBvcnQgeyBCTiwgQnVmZmVyIGFzIEJ1ZmZlckF2YXggfSBmcm9tICdhdmFsYW5jaGUnO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgRGVjb2RlZFV0eG9PYmosIFR4IH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBUeCBhcyBQVk1UeCB9IGZyb20gJ2F2YWxhbmNoZS9kaXN0L2FwaXMvcGxhdGZvcm12bSc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBUcmFuc2FjdGlvbkJ1aWxkZXIgZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgcHJpdmF0ZSBfdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uO1xuICBwdWJsaWMgX3NpZ25lcjogS2V5UGFpcltdID0gW107XG4gIHByb3RlY3RlZCByZWNvdmVyU2lnbmVyID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uID0gbmV3IFRyYW5zYWN0aW9uKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplIHRoZSB0cmFuc2FjdGlvbiBidWlsZGVyIGZpZWxkcyB1c2luZyB0aGUgZGVjb2RlZCB0cmFuc2FjdGlvbiBkYXRhXG4gICAqXG4gICAqIEBwYXJhbSB7VHJhbnNhY3Rpb259IHR4IHRoZSB0cmFuc2FjdGlvbiBkYXRhXG4gICAqIEByZXR1cm5zIGl0c2VsZlxuICAgKi9cbiAgaW5pdEJ1aWxkZXIodHg6IFR4KTogdGhpcyB7XG4gICAgY29uc3QgYmFzZVR4ID0gdHguZ2V0VW5zaWduZWRUeCgpLmdldFRyYW5zYWN0aW9uKCk7XG4gICAgaWYgKFxuICAgICAgYmFzZVR4LmdldE5ldHdvcmtJRCgpICE9PSB0aGlzLl90cmFuc2FjdGlvbi5fbmV0d29ya0lEIHx8XG4gICAgICAhYmFzZVR4LmdldEJsb2NrY2hhaW5JRCgpLmVxdWFscyh0aGlzLl90cmFuc2FjdGlvbi5fYmxvY2tjaGFpbklEKVxuICAgICkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdOZXR3b3JrIG9yIGJsb2NrY2hhaW4gaXMgbm90IGVxdWFscycpO1xuICAgIH1cbiAgICAvLyBFVk1CYXNlVHggaGFzIG5vdCBtZW1vLlxuICAgIGlmICgnZ2V0TWVtbycgaW4gYmFzZVR4KSB7XG4gICAgICB0aGlzLl90cmFuc2FjdGlvbi5fbWVtbyA9IGJhc2VUeC5nZXRNZW1vKCk7XG4gICAgfVxuICAgIHRoaXMuX3RyYW5zYWN0aW9uLnNldFRyYW5zYWN0aW9uKHR4KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgZnJvbUltcGxlbWVudGF0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiBUcmFuc2FjdGlvbiB7XG4gICAgY29uc3QgdHggPSBuZXcgUFZNVHgoKTtcbiAgICB0eC5mcm9tQnVmZmVyKEJ1ZmZlckF2YXguZnJvbShyYXdUcmFuc2FjdGlvbiwgJ2hleCcpKTtcbiAgICB0aGlzLmluaXRCdWlsZGVyKHR4KTtcbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgYnVpbGRJbXBsZW1lbnRhdGlvbigpOiBQcm9taXNlPFRyYW5zYWN0aW9uPiB7XG4gICAgdGhpcy5idWlsZEF2YXhUcmFuc2FjdGlvbigpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uc2V0VHJhbnNhY3Rpb25UeXBlKHRoaXMudHJhbnNhY3Rpb25UeXBlKTtcbiAgICBpZiAodGhpcy5oYXNTaWduZXIpIHtcbiAgICAgIHRoaXMuX3NpZ25lci5mb3JFYWNoKChrZXlQYWlyKSA9PiB0aGlzLnRyYW5zYWN0aW9uLnNpZ24oa2V5UGFpcikpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZHMgdGhlIGF2YXggdHJhbnNhY3Rpb24uIHRyYW5zYWN0aW9uIGZpZWxkIGlzIGNoYW5nZWQuXG4gICAqL1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgYnVpbGRBdmF4VHJhbnNhY3Rpb24oKTogdm9pZDtcblxuICAvLyByZWdpb24gR2V0dGVycyBhbmQgU2V0dGVyc1xuICAvKipcbiAgICogV2hlbiB1c2luZyByZWNvdmVyeSBrZXkgbXVzdCBiZSBzZXQgaGVyZVxuICAgKiBUT0RPOiBTVExYLTE3MzE3IHJlY292ZXJ5IGtleSBzaWduaW5nXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gdHJ1ZSBpZiBpdCdzIHJlY292ZXJ5IHNpZ25lciwgZGVmYXVsdCB0cnVlLlxuICAgKi9cbiAgcHVibGljIHJlY292ZXJNb2RlKHJlY292ZXJTaWduZXIgPSB0cnVlKTogdGhpcyB7XG4gICAgdGhpcy5yZWNvdmVyU2lnbmVyID0gcmVjb3ZlclNpZ25lcjtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBUaHJlc2hvbGQgaXMgYW4gaW50IHRoYXQgbmFtZXMgdGhlIG51bWJlciBvZiB1bmlxdWUgc2lnbmF0dXJlcyByZXF1aXJlZCB0byBzcGVuZCB0aGUgb3V0cHV0LlxuICAgKiBNdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byB0aGUgbGVuZ3RoIG9mIEFkZHJlc3Nlcy5cbiAgICogQHBhcmFtIHtudW1iZXJ9XG4gICAqL1xuICB0aHJlc2hvbGQodmFsdWU6IG51bWJlcik6IHRoaXMge1xuICAgIHRoaXMudmFsaWRhdGVUaHJlc2hvbGQodmFsdWUpO1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uLl90aHJlc2hvbGQgPSB2YWx1ZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2NrdGltZSBpcyBhIGxvbmcgdGhhdCBjb250YWlucyB0aGUgdW5peCB0aW1lc3RhbXAgdGhhdCB0aGlzIG91dHB1dCBjYW4gYmUgc3BlbnQgYWZ0ZXIuXG4gICAqIFRoZSB1bml4IHRpbWVzdGFtcCBpcyBzcGVjaWZpYyB0byB0aGUgc2Vjb25kLlxuICAgKiBAcGFyYW0gdmFsdWVcbiAgICovXG4gIGxvY2t0aW1lKHZhbHVlOiBzdHJpbmcgfCBudW1iZXIpOiB0aGlzIHtcbiAgICB0aGlzLnZhbGlkYXRlTG9ja3RpbWUobmV3IEJOKHZhbHVlKSk7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24uX2xvY2t0aW1lID0gbmV3IEJOKHZhbHVlKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBmcm9tUHViS2V5IGlzIGEgbGlzdCBvZiB1bmlxdWUgYWRkcmVzc2VzIHRoYXQgY29ycmVzcG9uZCB0byB0aGUgcHJpdmF0ZSBrZXlzIHRoYXQgY2FuIGJlIHVzZWQgdG8gc3BlbmQgdGhpcyBvdXRwdXQuXG4gICAqIEBwYXJhbSB7c3RyaW5nIHwgc3Rpcm5nW119IHNlbmRlclB1YktleVxuICAgKi9cbiAgZnJvbVB1YktleShzZW5kZXJQdWJLZXk6IHN0cmluZyB8IHN0cmluZ1tdKTogdGhpcyB7XG4gICAgY29uc3QgcHViS2V5cyA9IHNlbmRlclB1YktleSBpbnN0YW5jZW9mIEFycmF5ID8gc2VuZGVyUHViS2V5IDogW3NlbmRlclB1YktleV07XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24uX2Zyb21BZGRyZXNzZXMgPSBwdWJLZXlzLm1hcCh1dGlscy5wYXJzZUFkZHJlc3MpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgVVRYTyByZXF1aXJlZCBhcyBpbnB1dHMuXG4gICAqIEEgVVRYTyBpcyBhIHN0YW5kYWxvbmUgcmVwcmVzZW50YXRpb24gb2YgYSB0cmFuc2FjdGlvbiBvdXRwdXQuXG4gICAqXG4gICAqIEBwYXJhbSB7RGVjb2RlZFV0eG9PYmpbXX0gbGlzdCBvZiBVVFhPU1xuICAgKi9cbiAgdXR4b3ModmFsdWU6IERlY29kZWRVdHhvT2JqW10pOiB0aGlzIHtcbiAgICB0aGlzLnZhbGlkYXRlVXR4b3ModmFsdWUpO1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uLl91dHhvcyA9IHZhbHVlO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG4gIC8qKlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgT3B0aW9uYWwgQnVmZmVyIGZvciB0aGUgbWVtb1xuICAgKiBAcmV0dXJucyB2YWx1ZSBCdWZmZXIgZm9yIHRoZSBtZW1vXG4gICAqIHNldCB1c2luZyBCdWZmZXIuZnJvbShcIm1lc3NhZ2VcIilcbiAgICovXG4gIG1lbW8odmFsdWU6IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uLl9tZW1vID0gdXRpbHMuc3RyaW5nVG9CdWZmZXIodmFsdWUpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHRlciBmb3Iga25vdyBpZiBidWlsZCBzaG91bGQgc2lnblxuICAgKi9cbiAgZ2V0IGhhc1NpZ25lcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fc2lnbmVyICE9PSB1bmRlZmluZWQgJiYgdGhpcy5fc2lnbmVyLmxlbmd0aCA+IDA7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvbigpOiBUcmFuc2FjdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuX3RyYW5zYWN0aW9uO1xuICB9XG5cbiAgcHJvdGVjdGVkIHNldCB0cmFuc2FjdGlvbih0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pIHtcbiAgICB0aGlzLl90cmFuc2FjdGlvbiA9IHRyYW5zYWN0aW9uO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBzaWduSW1wbGVtZW50YXRpb24oeyBrZXkgfTogQmFzZUtleSk6IEJhc2VUcmFuc2FjdGlvbiB7XG4gICAgdGhpcy5fc2lnbmVyLnB1c2gobmV3IEtleVBhaXIoeyBwcnY6IGtleSB9KSk7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb247XG4gIH1cblxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgZ2V0IHRyYW5zYWN0aW9uVHlwZSgpOiBUcmFuc2FjdGlvblR5cGU7XG5cbiAgLy8gZW5kcmVnaW9uXG4gIC8vIHJlZ2lvbiBWYWxpZGF0b3JzXG5cbiAgLyoqXG4gICAqIFZhbGlkYXRlcyB0aGUgdGhyZXNob2xkXG4gICAqIEBwYXJhbSB0aHJlc2hvbGRcbiAgICovXG4gIHZhbGlkYXRlVGhyZXNob2xkKHRocmVzaG9sZDogbnVtYmVyKTogdm9pZCB7XG4gICAgaWYgKCF0aHJlc2hvbGQgfHwgdGhyZXNob2xkICE9PSAyKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHRyYW5zYWN0aW9uOiB0aHJlc2hvbGQgbXVzdCBiZSBzZXQgdG8gMicpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZXMgbG9ja3RpbWVcbiAgICogQHBhcmFtIGxvY2t0aW1lXG4gICAqL1xuICB2YWxpZGF0ZUxvY2t0aW1lKGxvY2t0aW1lOiBCTik6IHZvaWQge1xuICAgIGlmICghbG9ja3RpbWUgfHwgbG9ja3RpbWUubHQobmV3IEJOKDApKSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCB0cmFuc2FjdGlvbjogbG9ja3RpbWUgbXVzdCBiZSAwIG9yIGhpZ2hlcicpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZUFkZHJlc3MoYWRkcmVzczogQmFzZUFkZHJlc3MsIGFkZHJlc3NGb3JtYXQ/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoIXV0aWxzLmlzVmFsaWRBZGRyZXNzKGFkZHJlc3MuYWRkcmVzcykpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgYWRkcmVzcycpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZUtleSh7IGtleSB9OiBCYXNlS2V5KTogdm9pZCB7XG4gICAgaWYgKCFuZXcgS2V5UGFpcih7IHBydjoga2V5IH0pKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIGtleScpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayB0aGUgcmF3IHRyYW5zYWN0aW9uIGhhcyBhIHZhbGlkIGZvcm1hdCBpbiB0aGUgYmxvY2tjaGFpbiBjb250ZXh0LCB0aHJvdyBvdGhlcndpc2UuXG4gICAqIEl0IG92ZXJyaWRlcyBhYnN0cmFjdCBtZXRob2QgZnJvbSBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyXG4gICAqXG4gICAqIEBwYXJhbSByYXdUcmFuc2FjdGlvbiBUcmFuc2FjdGlvbiBpbiBhbnkgZm9ybWF0XG4gICAqL1xuICB2YWxpZGF0ZVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB1dGlscy52YWxpZGF0ZVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVRyYW5zYWN0aW9uKHRyYW5zYWN0aW9uPzogVHJhbnNhY3Rpb24pOiB2b2lkIHtcbiAgICAvLyB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigndmFsaWRhdGVUcmFuc2FjdGlvbiBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVZhbHVlKHZhbHVlOiBCaWdOdW1iZXIpOiB2b2lkIHtcbiAgICBpZiAodmFsdWUuaXNMZXNzVGhhbigwKSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignVmFsdWUgY2Fubm90IGJlIGxlc3MgdGhhbiB6ZXJvJyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIHRoZSBsaXN0IG9mIFVUWE9TIGlzIGVtcHR5IGFuZCBjaGVjayBlYWNoIFVUWE8uXG4gICAqIEBwYXJhbSB2YWx1ZXNcbiAgICovXG4gIHZhbGlkYXRlVXR4b3ModmFsdWVzOiBEZWNvZGVkVXR4b09ialtdKTogdm9pZCB7XG4gICAgaWYgKHZhbHVlcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoXCJVdHhvcyBjYW4ndCBiZSBlbXB0eSBhcnJheVwiKTtcbiAgICB9XG4gICAgdmFsdWVzLmZvckVhY2godGhpcy52YWxpZGF0ZVV0eG8pO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIHRoZSBVVFhPIGhhcyBleHBlY3RlZCBmaWVsZHMuXG4gICAqIEBwYXJhbSBVVFhPXG4gICAqL1xuICB2YWxpZGF0ZVV0eG8odmFsdWU6IERlY29kZWRVdHhvT2JqKTogdm9pZCB7XG4gICAgWydvdXRwdXRJRCcsICdhbW91bnQnLCAndHhpZCcsICdvdXRwdXRpZHgnXS5mb3JFYWNoKChmaWVsZCkgPT4ge1xuICAgICAgaWYgKCF2YWx1ZS5oYXNPd25Qcm9wZXJ0eShmaWVsZCkpIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoYFV0eG9zIHJlcXVpcmVkICR7ZmllbGR9YCk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgdGhlIGFtb3VudCBpcyBwb3NpdGl2ZS5cbiAgICogQHBhcmFtIGFtb3VudFxuICAgKi9cbiAgdmFsaWRhdGVBbW91bnQoYW1vdW50OiBCTik6IHZvaWQge1xuICAgIGlmIChhbW91bnQubHRlbigwKSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignQW1vdW50IG11c3QgYmUgZ3JlYXRlciB0aGFuIDAnKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgdGhlIGJ1ZmZlciBoYXMgMzIgYnl0ZSBsb25nLlxuICAgKiBAcGFyYW0gY2hhaW5JRFxuICAgKi9cbiAgdmFsaWRhdGVDaGFpbklkKGNoYWluSUQ6IEJ1ZmZlckF2YXgpOiB2b2lkIHtcbiAgICBpZiAoY2hhaW5JRC5sZW5ndGggIT09IDMyKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdDaGFpbiBpZCBhcmUgMzIgYnl0ZSBzaXplJyk7XG4gICAgfVxuICB9XG5cbiAgLy8gZW5kcmVnaW9uXG59XG4iXX0=
|
|
210
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2FjdGlvbkJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRUEsOENBT3lCO0FBQ3pCLCtDQUE0QztBQUM1Qyx1Q0FBb0M7QUFDcEMseUNBQXFEO0FBQ3JELG9EQUE0QjtBQUU1QiwrREFBNkQ7QUFFN0QsTUFBc0Isa0JBQW1CLFNBQVEsaUNBQXNCO0lBS3JFLFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBSmQsWUFBTyxHQUFjLEVBQUUsQ0FBQztRQUNyQixrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUk5QixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUkseUJBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxXQUFXLENBQUMsRUFBTTtRQUNoQixNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUMsYUFBYSxFQUFFLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDbkQsSUFDRSxNQUFNLENBQUMsWUFBWSxFQUFFLEtBQUssSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVO1lBQ3RELENBQUMsTUFBTSxDQUFDLGVBQWUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxFQUNqRTtZQUNBLE1BQU0sSUFBSSxLQUFLLENBQUMscUNBQXFDLENBQUMsQ0FBQztTQUN4RDtRQUNELElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3JDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELGtCQUFrQjtJQUNSLGtCQUFrQixDQUFDLGNBQXNCO1FBQ2pELE1BQU0sRUFBRSxHQUFHLElBQUksZUFBSyxFQUFFLENBQUM7UUFDdkIsRUFBRSxDQUFDLFVBQVUsQ0FBQyxrQkFBVSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBRUQsa0JBQWtCO0lBQ1IsS0FBSyxDQUFDLG1CQUFtQjtRQUNqQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsV0FBVyxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUMxRCxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7U0FDbkU7UUFDRCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQU9ELDZCQUE2QjtJQUM3Qjs7OztPQUlHO0lBQ0ksV0FBVyxDQUFDLGFBQWEsR0FBRyxJQUFJO1FBQ3JDLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxTQUFTLENBQUMsS0FBYTtRQUNyQixJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ3JDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxRQUFRLENBQUMsS0FBc0I7UUFDN0IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksY0FBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLEdBQUcsSUFBSSxjQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsVUFBVSxDQUFDLFlBQStCO1FBQ3hDLE1BQU0sT0FBTyxHQUFHLFlBQVksWUFBWSxLQUFLLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUM5RSxJQUFJLENBQUMsWUFBWSxDQUFDLGNBQWMsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLGVBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNuRSxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILEtBQUssQ0FBQyxLQUF1QjtRQUMzQixJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNqQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLE9BQU8sS0FBSyxTQUFTLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsSUFBYyxXQUFXO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0lBRUQsSUFBYyxXQUFXLENBQUMsV0FBd0I7UUFDaEQsSUFBSSxDQUFDLFlBQVksR0FBRyxXQUFXLENBQUM7SUFDbEMsQ0FBQztJQUVELGtCQUFrQjtJQUNSLGtCQUFrQixDQUFDLEVBQUUsR0FBRyxFQUFXO1FBQzNDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksaUJBQU8sQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDN0MsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFJRCxZQUFZO0lBQ1osb0JBQW9CO0lBRXBCOzs7T0FHRztJQUNILGlCQUFpQixDQUFDLFNBQWlCO1FBQ2pDLElBQUksQ0FBQyxTQUFTLElBQUksU0FBUyxLQUFLLENBQUMsRUFBRTtZQUNqQyxNQUFNLElBQUksZ0NBQXFCLENBQUMsaURBQWlELENBQUMsQ0FBQztTQUNwRjtJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSCxnQkFBZ0IsQ0FBQyxRQUFZO1FBQzNCLElBQUksQ0FBQyxRQUFRLElBQUksUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLGNBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ3ZDLE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyxtREFBbUQsQ0FBQyxDQUFDO1NBQ3RGO0lBQ0gsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixlQUFlLENBQUMsT0FBb0IsRUFBRSxhQUFzQjtRQUMxRCxJQUFJLENBQUMsZUFBSyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDMUMsTUFBTSxJQUFJLGdDQUFxQixDQUFDLGlCQUFpQixDQUFDLENBQUM7U0FDcEQ7SUFDSCxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLFdBQVcsQ0FBQyxFQUFFLEdBQUcsRUFBVztRQUMxQixJQUFJLENBQUMsSUFBSSxpQkFBTyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUU7WUFDOUIsTUFBTSxJQUFJLGdDQUFxQixDQUFDLGFBQWEsQ0FBQyxDQUFDO1NBQ2hEO0lBQ0gsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsc0JBQXNCLENBQUMsY0FBc0I7UUFDM0MsZUFBSyxDQUFDLHNCQUFzQixDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsbUJBQW1CLENBQUMsV0FBeUI7UUFDM0Msd0VBQXdFO0lBQzFFLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsYUFBYSxDQUFDLEtBQWdCO1FBQzVCLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUN2QixNQUFNLElBQUksZ0NBQXFCLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztTQUNuRTtJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSCxhQUFhLENBQUMsTUFBd0I7UUFDcEMsSUFBSSxNQUFNLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUN2QixNQUFNLElBQUksZ0NBQXFCLENBQUMsNEJBQTRCLENBQUMsQ0FBQztTQUMvRDtRQUNELE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRDs7O09BR0c7SUFDSCxZQUFZLENBQUMsS0FBcUI7UUFDaEMsQ0FBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxXQUFXLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUM1RCxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUM7Z0JBQUUsTUFBTSxJQUFJLGdDQUFxQixDQUFDLGtCQUFrQixLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQy9GLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7T0FHRztJQUNILGNBQWMsQ0FBQyxNQUFVO1FBQ3ZCLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNsQixNQUFNLElBQUksZ0NBQXFCLENBQUMsK0JBQStCLENBQUMsQ0FBQztTQUNsRTtJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSCxlQUFlLENBQUMsT0FBbUI7UUFDakMsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLEVBQUUsRUFBRTtZQUN6QixNQUFNLElBQUksZ0NBQXFCLENBQUMsMkJBQTJCLENBQUMsQ0FBQztTQUM5RDtJQUNILENBQUM7Q0FHRjtBQXZPRCxnREF1T0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IEJpZ051bWJlciBmcm9tICdiaWdudW1iZXIuanMnO1xuaW1wb3J0IHtcbiAgQmFzZUFkZHJlc3MsXG4gIEJhc2VLZXksXG4gIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIFRyYW5zYWN0aW9uVHlwZSxcbiAgQnVpbGRUcmFuc2FjdGlvbkVycm9yLFxuICBCYXNlVHJhbnNhY3Rpb24sXG59IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgS2V5UGFpciB9IGZyb20gJy4va2V5UGFpcic7XG5pbXBvcnQgeyBCTiwgQnVmZmVyIGFzIEJ1ZmZlckF2YXggfSBmcm9tICdhdmFsYW5jaGUnO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgRGVjb2RlZFV0eG9PYmosIFR4IH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBUeCBhcyBQVk1UeCB9IGZyb20gJ2F2YWxhbmNoZS9kaXN0L2FwaXMvcGxhdGZvcm12bSc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBUcmFuc2FjdGlvbkJ1aWxkZXIgZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgcHJpdmF0ZSBfdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uO1xuICBwdWJsaWMgX3NpZ25lcjogS2V5UGFpcltdID0gW107XG4gIHByb3RlY3RlZCByZWNvdmVyU2lnbmVyID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uID0gbmV3IFRyYW5zYWN0aW9uKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplIHRoZSB0cmFuc2FjdGlvbiBidWlsZGVyIGZpZWxkcyB1c2luZyB0aGUgZGVjb2RlZCB0cmFuc2FjdGlvbiBkYXRhXG4gICAqXG4gICAqIEBwYXJhbSB7VHJhbnNhY3Rpb259IHR4IHRoZSB0cmFuc2FjdGlvbiBkYXRhXG4gICAqIEByZXR1cm5zIGl0c2VsZlxuICAgKi9cbiAgaW5pdEJ1aWxkZXIodHg6IFR4KTogdGhpcyB7XG4gICAgY29uc3QgYmFzZVR4ID0gdHguZ2V0VW5zaWduZWRUeCgpLmdldFRyYW5zYWN0aW9uKCk7XG4gICAgaWYgKFxuICAgICAgYmFzZVR4LmdldE5ldHdvcmtJRCgpICE9PSB0aGlzLl90cmFuc2FjdGlvbi5fbmV0d29ya0lEIHx8XG4gICAgICAhYmFzZVR4LmdldEJsb2NrY2hhaW5JRCgpLmVxdWFscyh0aGlzLl90cmFuc2FjdGlvbi5fYmxvY2tjaGFpbklEKVxuICAgICkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdOZXR3b3JrIG9yIGJsb2NrY2hhaW4gaXMgbm90IGVxdWFscycpO1xuICAgIH1cbiAgICB0aGlzLl90cmFuc2FjdGlvbi5zZXRUcmFuc2FjdGlvbih0eCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGZyb21JbXBsZW1lbnRhdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IHR4ID0gbmV3IFBWTVR4KCk7XG4gICAgdHguZnJvbUJ1ZmZlcihCdWZmZXJBdmF4LmZyb20ocmF3VHJhbnNhY3Rpb24sICdoZXgnKSk7XG4gICAgdGhpcy5pbml0QnVpbGRlcih0eCk7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb247XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGFzeW5jIGJ1aWxkSW1wbGVtZW50YXRpb24oKTogUHJvbWlzZTxUcmFuc2FjdGlvbj4ge1xuICAgIHRoaXMuYnVpbGRBdmF4VHJhbnNhY3Rpb24oKTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLnNldFRyYW5zYWN0aW9uVHlwZSh0aGlzLnRyYW5zYWN0aW9uVHlwZSk7XG4gICAgaWYgKHRoaXMuaGFzU2lnbmVyKSB7XG4gICAgICB0aGlzLl9zaWduZXIuZm9yRWFjaCgoa2V5UGFpcikgPT4gdGhpcy50cmFuc2FjdGlvbi5zaWduKGtleVBhaXIpKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb247XG4gIH1cblxuICAvKipcbiAgICogQnVpbGRzIHRoZSBhdmF4IHRyYW5zYWN0aW9uLiB0cmFuc2FjdGlvbiBmaWVsZCBpcyBjaGFuZ2VkLlxuICAgKi9cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGJ1aWxkQXZheFRyYW5zYWN0aW9uKCk6IHZvaWQ7XG5cbiAgLy8gcmVnaW9uIEdldHRlcnMgYW5kIFNldHRlcnNcbiAgLyoqXG4gICAqIFdoZW4gdXNpbmcgcmVjb3Zlcnkga2V5IG11c3QgYmUgc2V0IGhlcmVcbiAgICogVE9ETzogU1RMWC0xNzMxNyByZWNvdmVyeSBrZXkgc2lnbmluZ1xuICAgKiBAcGFyYW0ge2Jvb2xlYW59IHRydWUgaWYgaXQncyByZWNvdmVyeSBzaWduZXIsIGRlZmF1bHQgdHJ1ZS5cbiAgICovXG4gIHB1YmxpYyByZWNvdmVyTW9kZShyZWNvdmVyU2lnbmVyID0gdHJ1ZSk6IHRoaXMge1xuICAgIHRoaXMucmVjb3ZlclNpZ25lciA9IHJlY292ZXJTaWduZXI7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogVGhyZXNob2xkIGlzIGFuIGludCB0aGF0IG5hbWVzIHRoZSBudW1iZXIgb2YgdW5pcXVlIHNpZ25hdHVyZXMgcmVxdWlyZWQgdG8gc3BlbmQgdGhlIG91dHB1dC5cbiAgICogTXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gdGhlIGxlbmd0aCBvZiBBZGRyZXNzZXMuXG4gICAqIEBwYXJhbSB7bnVtYmVyfVxuICAgKi9cbiAgdGhyZXNob2xkKHZhbHVlOiBudW1iZXIpOiB0aGlzIHtcbiAgICB0aGlzLnZhbGlkYXRlVGhyZXNob2xkKHZhbHVlKTtcbiAgICB0aGlzLl90cmFuc2FjdGlvbi5fdGhyZXNob2xkID0gdmFsdWU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogTG9ja3RpbWUgaXMgYSBsb25nIHRoYXQgY29udGFpbnMgdGhlIHVuaXggdGltZXN0YW1wIHRoYXQgdGhpcyBvdXRwdXQgY2FuIGJlIHNwZW50IGFmdGVyLlxuICAgKiBUaGUgdW5peCB0aW1lc3RhbXAgaXMgc3BlY2lmaWMgdG8gdGhlIHNlY29uZC5cbiAgICogQHBhcmFtIHZhbHVlXG4gICAqL1xuICBsb2NrdGltZSh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyKTogdGhpcyB7XG4gICAgdGhpcy52YWxpZGF0ZUxvY2t0aW1lKG5ldyBCTih2YWx1ZSkpO1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uLl9sb2NrdGltZSA9IG5ldyBCTih2YWx1ZSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogZnJvbVB1YktleSBpcyBhIGxpc3Qgb2YgdW5pcXVlIGFkZHJlc3NlcyB0aGF0IGNvcnJlc3BvbmQgdG8gdGhlIHByaXZhdGUga2V5cyB0aGF0IGNhbiBiZSB1c2VkIHRvIHNwZW5kIHRoaXMgb3V0cHV0LlxuICAgKiBAcGFyYW0ge3N0cmluZyB8IHN0aXJuZ1tdfSBzZW5kZXJQdWJLZXlcbiAgICovXG4gIGZyb21QdWJLZXkoc2VuZGVyUHViS2V5OiBzdHJpbmcgfCBzdHJpbmdbXSk6IHRoaXMge1xuICAgIGNvbnN0IHB1YktleXMgPSBzZW5kZXJQdWJLZXkgaW5zdGFuY2VvZiBBcnJheSA/IHNlbmRlclB1YktleSA6IFtzZW5kZXJQdWJLZXldO1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uLl9mcm9tQWRkcmVzc2VzID0gcHViS2V5cy5tYXAodXRpbHMucGFyc2VBZGRyZXNzKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBMaXN0IG9mIFVUWE8gcmVxdWlyZWQgYXMgaW5wdXRzLlxuICAgKiBBIFVUWE8gaXMgYSBzdGFuZGFsb25lIHJlcHJlc2VudGF0aW9uIG9mIGEgdHJhbnNhY3Rpb24gb3V0cHV0LlxuICAgKlxuICAgKiBAcGFyYW0ge0RlY29kZWRVdHhvT2JqW119IGxpc3Qgb2YgVVRYT1NcbiAgICovXG4gIHV0eG9zKHZhbHVlOiBEZWNvZGVkVXR4b09ialtdKTogdGhpcyB7XG4gICAgdGhpcy52YWxpZGF0ZVV0eG9zKHZhbHVlKTtcbiAgICB0aGlzLl90cmFuc2FjdGlvbi5fdXR4b3MgPSB2YWx1ZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXR0ZXIgZm9yIGtub3cgaWYgYnVpbGQgc2hvdWxkIHNpZ25cbiAgICovXG4gIGdldCBoYXNTaWduZXIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3NpZ25lciAhPT0gdW5kZWZpbmVkICYmIHRoaXMuX3NpZ25lci5sZW5ndGggPiAwO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBnZXQgdHJhbnNhY3Rpb24oKTogVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiB0aGlzLl90cmFuc2FjdGlvbjtcbiAgfVxuXG4gIHByb3RlY3RlZCBzZXQgdHJhbnNhY3Rpb24odHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKSB7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24gPSB0cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgc2lnbkltcGxlbWVudGF0aW9uKHsga2V5IH06IEJhc2VLZXkpOiBCYXNlVHJhbnNhY3Rpb24ge1xuICAgIHRoaXMuX3NpZ25lci5wdXNoKG5ldyBLZXlQYWlyKHsgcHJ2OiBrZXkgfSkpO1xuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlO1xuXG4gIC8vIGVuZHJlZ2lvblxuICAvLyByZWdpb24gVmFsaWRhdG9yc1xuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZXMgdGhlIHRocmVzaG9sZFxuICAgKiBAcGFyYW0gdGhyZXNob2xkXG4gICAqL1xuICB2YWxpZGF0ZVRocmVzaG9sZCh0aHJlc2hvbGQ6IG51bWJlcik6IHZvaWQge1xuICAgIGlmICghdGhyZXNob2xkIHx8IHRocmVzaG9sZCAhPT0gMikge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCB0cmFuc2FjdGlvbjogdGhyZXNob2xkIG11c3QgYmUgc2V0IHRvIDInKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGVzIGxvY2t0aW1lXG4gICAqIEBwYXJhbSBsb2NrdGltZVxuICAgKi9cbiAgdmFsaWRhdGVMb2NrdGltZShsb2NrdGltZTogQk4pOiB2b2lkIHtcbiAgICBpZiAoIWxvY2t0aW1lIHx8IGxvY2t0aW1lLmx0KG5ldyBCTigwKSkpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgdHJhbnNhY3Rpb246IGxvY2t0aW1lIG11c3QgYmUgMCBvciBoaWdoZXInKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVBZGRyZXNzKGFkZHJlc3M6IEJhc2VBZGRyZXNzLCBhZGRyZXNzRm9ybWF0Pzogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKCF1dGlscy5pc1ZhbGlkQWRkcmVzcyhhZGRyZXNzLmFkZHJlc3MpKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIGFkZHJlc3MnKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVLZXkoeyBrZXkgfTogQmFzZUtleSk6IHZvaWQge1xuICAgIGlmICghbmV3IEtleVBhaXIoeyBwcnY6IGtleSB9KSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCBrZXknKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgdGhlIHJhdyB0cmFuc2FjdGlvbiBoYXMgYSB2YWxpZCBmb3JtYXQgaW4gdGhlIGJsb2NrY2hhaW4gY29udGV4dCwgdGhyb3cgb3RoZXJ3aXNlLlxuICAgKiBJdCBvdmVycmlkZXMgYWJzdHJhY3QgbWV0aG9kIGZyb20gQmFzZVRyYW5zYWN0aW9uQnVpbGRlclxuICAgKlxuICAgKiBAcGFyYW0gcmF3VHJhbnNhY3Rpb24gVHJhbnNhY3Rpb24gaW4gYW55IGZvcm1hdFxuICAgKi9cbiAgdmFsaWRhdGVSYXdUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogdm9pZCB7XG4gICAgdXRpbHMudmFsaWRhdGVSYXdUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbik7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVUcmFuc2FjdGlvbih0cmFuc2FjdGlvbj86IFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgLy8gdGhyb3cgbmV3IE5vdEltcGxlbWVudGVkRXJyb3IoJ3ZhbGlkYXRlVHJhbnNhY3Rpb24gbm90IGltcGxlbWVudGVkJyk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVWYWx1ZSh2YWx1ZTogQmlnTnVtYmVyKTogdm9pZCB7XG4gICAgaWYgKHZhbHVlLmlzTGVzc1RoYW4oMCkpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ1ZhbHVlIGNhbm5vdCBiZSBsZXNzIHRoYW4gemVybycpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayB0aGUgbGlzdCBvZiBVVFhPUyBpcyBlbXB0eSBhbmQgY2hlY2sgZWFjaCBVVFhPLlxuICAgKiBAcGFyYW0gdmFsdWVzXG4gICAqL1xuICB2YWxpZGF0ZVV0eG9zKHZhbHVlczogRGVjb2RlZFV0eG9PYmpbXSk6IHZvaWQge1xuICAgIGlmICh2YWx1ZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKFwiVXR4b3MgY2FuJ3QgYmUgZW1wdHkgYXJyYXlcIik7XG4gICAgfVxuICAgIHZhbHVlcy5mb3JFYWNoKHRoaXMudmFsaWRhdGVVdHhvKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayB0aGUgVVRYTyBoYXMgZXhwZWN0ZWQgZmllbGRzLlxuICAgKiBAcGFyYW0gVVRYT1xuICAgKi9cbiAgdmFsaWRhdGVVdHhvKHZhbHVlOiBEZWNvZGVkVXR4b09iaik6IHZvaWQge1xuICAgIFsnb3V0cHV0SUQnLCAnYW1vdW50JywgJ3R4aWQnLCAnb3V0cHV0aWR4J10uZm9yRWFjaCgoZmllbGQpID0+IHtcbiAgICAgIGlmICghdmFsdWUuaGFzT3duUHJvcGVydHkoZmllbGQpKSB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKGBVdHhvcyByZXF1aXJlZCAke2ZpZWxkfWApO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIHRoZSBhbW91bnQgaXMgcG9zaXRpdmUuXG4gICAqIEBwYXJhbSBhbW91bnRcbiAgICovXG4gIHZhbGlkYXRlQW1vdW50KGFtb3VudDogQk4pOiB2b2lkIHtcbiAgICBpZiAoYW1vdW50Lmx0ZW4oMCkpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0Ftb3VudCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAwJyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIHRoZSBidWZmZXIgaGFzIDMyIGJ5dGUgbG9uZy5cbiAgICogQHBhcmFtIGNoYWluSURcbiAgICovXG4gIHZhbGlkYXRlQ2hhaW5JZChjaGFpbklEOiBCdWZmZXJBdmF4KTogdm9pZCB7XG4gICAgaWYgKGNoYWluSUQubGVuZ3RoICE9PSAzMikge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignQ2hhaW4gaWQgYXJlIDMyIGJ5dGUgc2l6ZScpO1xuICAgIH1cbiAgfVxuXG4gIC8vIGVuZHJlZ2lvblxufVxuIl19
|
|
@@ -62,8 +62,8 @@ class ValidatorTxBuilder extends delegatorTxBuilder_1.DelegatorTxBuilder {
|
|
|
62
62
|
*/
|
|
63
63
|
buildAvaxTransaction() {
|
|
64
64
|
const { inputs, outputs, credentials } = this.createInputOutput();
|
|
65
|
-
this.transaction.setTransaction(new platformvm_1.Tx(new platformvm_1.UnsignedTx(new platformvm_1.AddValidatorTx(this.transaction._networkID, this.transaction._blockchainID, outputs, inputs,
|
|
65
|
+
this.transaction.setTransaction(new platformvm_1.Tx(new platformvm_1.UnsignedTx(new platformvm_1.AddValidatorTx(this.transaction._networkID, this.transaction._blockchainID, outputs, inputs, undefined, utils_1.default.NodeIDStringToBuffer(this._nodeID), this._startTime, this._endTime, this._stakeAmount, [this.stakeTransferOut()], this.rewardOwnersOutput(), this._delegationFeeRate)), credentials));
|
|
66
66
|
}
|
|
67
67
|
}
|
|
68
68
|
exports.ValidatorTxBuilder = ValidatorTxBuilder;
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9yVHhCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi92YWxpZGF0b3JUeEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsNkRBQTBEO0FBRTFELCtEQUE4RztBQUM5Ryw4Q0FBdUY7QUFFdkYsb0RBQTRCO0FBRTVCLE1BQWEsa0JBQW1CLFNBQVEsdUNBQWtCO0lBR3hEOztPQUVHO0lBQ0gsWUFBWSxVQUE4QjtRQUN4QyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUVEOzs7T0FHRztJQUNILElBQWMsZUFBZTtRQUMzQixPQUFPLDBCQUFlLENBQUMsWUFBWSxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7O09BR0c7SUFDSCxpQkFBaUIsQ0FBQyxLQUFhO1FBQzdCLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO1FBQ2hDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7T0FHRztJQUNILHlCQUF5QixDQUFDLGlCQUF5QjtRQUNqRCxJQUFJLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFO1lBQzFFLE1BQU0sSUFBSSxnQ0FBcUIsQ0FDN0Isc0NBQXNDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLGdCQUFnQixFQUFFLENBQ25GLENBQUM7U0FDSDtJQUNILENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsV0FBVyxDQUFDLEVBQU07UUFDaEIsS0FBSyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN0QixNQUFNLE1BQU0sR0FBVyxFQUFFLENBQUMsYUFBYSxFQUFFLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDM0QsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDOUIsTUFBTSxJQUFJLHVCQUFZLENBQUMscUVBQXFFLENBQUMsQ0FBQztTQUMvRjtRQUNELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUNwRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxNQUFNLENBQUMsWUFBWSxDQUFDLE1BQWM7UUFDaEMsT0FBTyxNQUFNLENBQUMsU0FBUyxFQUFFLEtBQUssZ0NBQW1CLENBQUMsY0FBYyxDQUFDO0lBQ25FLENBQUM7SUFFRCxZQUFZLENBQUMsTUFBYztRQUN6QixPQUFPLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQ7OztPQUdHO0lBQ08sb0JBQW9CO1FBQzVCLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ2xFLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUM3QixJQUFJLGVBQUssQ0FDUCxJQUFJLHVCQUFVLENBQ1osSUFBSSwyQkFBYyxDQUNoQixJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFDM0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLEVBQzlCLE9BQU8sRUFDUCxNQUFNLEVBQ04sU0FBUyxFQUNULGVBQUssQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQ3hDLElBQUksQ0FBQyxVQUFVLEVBQ2YsSUFBSSxDQUFDLFFBQVEsRUFDYixJQUFJLENBQUMsWUFBWSxFQUNqQixDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLEVBQ3pCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxFQUN6QixJQUFJLENBQUMsa0JBQWtCLENBQ3hCLENBQ0YsRUFDRCxXQUFXLENBQ1osQ0FDRixDQUFDO0lBQ0osQ0FBQztDQUNGO0FBdkZELGdEQXVGQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERlbGVnYXRvclR4QnVpbGRlciB9IGZyb20gJy4vZGVsZWdhdG9yVHhCdWlsZGVyJztcbmltcG9ydCB7IEJhc2VDb2luIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHsgQWRkVmFsaWRhdG9yVHgsIFBsYXRmb3JtVk1Db25zdGFudHMsIFVuc2lnbmVkVHgsIFR4IGFzIFBWTVR4IH0gZnJvbSAnYXZhbGFuY2hlL2Rpc3QvYXBpcy9wbGF0Zm9ybXZtJztcbmltcG9ydCB7IEJ1aWxkVHJhbnNhY3Rpb25FcnJvciwgTm90U3VwcG9ydGVkLCBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuaW1wb3J0IHsgVHgsIEJhc2VUeCB9IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY2xhc3MgVmFsaWRhdG9yVHhCdWlsZGVyIGV4dGVuZHMgRGVsZWdhdG9yVHhCdWlsZGVyIHtcbiAgcHJvdGVjdGVkIF9kZWxlZ2F0aW9uRmVlUmF0ZTogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBAcGFyYW0gY29pbkNvbmZpZ1xuICAgKi9cbiAgY29uc3RydWN0b3IoY29pbkNvbmZpZzogUmVhZG9ubHk8QmFzZUNvaW4+KSB7XG4gICAgc3VwZXIoY29pbkNvbmZpZyk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IHRyYW5zYWN0aW9uIHR5cGVcbiAgICogQHByb3RlY3RlZFxuICAgKi9cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLkFkZFZhbGlkYXRvcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBzZXQgdGhlIGRlbGVnYXRpb25GZWVSYXRlXG4gICAqIEBwYXJhbSB2YWx1ZSBudW1iZXJcbiAgICovXG4gIGRlbGVnYXRpb25GZWVSYXRlKHZhbHVlOiBudW1iZXIpOiB0aGlzIHtcbiAgICB0aGlzLnZhbGlkYXRlRGVsZWdhdGlvbkZlZVJhdGUodmFsdWUpO1xuICAgIHRoaXMuX2RlbGVnYXRpb25GZWVSYXRlID0gdmFsdWU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGUgdGhhdCB0aGUgZGVsZWdhdGlvbiBmZWUgaXMgYXQgbGVhc3QgdGhlIG1pbkRlbGVnYXRpb25GZWVcbiAgICogQHBhcmFtIGRlbGVnYXRpb25GZWVSYXRlIG51bWJlclxuICAgKi9cbiAgdmFsaWRhdGVEZWxlZ2F0aW9uRmVlUmF0ZShkZWxlZ2F0aW9uRmVlUmF0ZTogbnVtYmVyKTogdm9pZCB7XG4gICAgaWYgKGRlbGVnYXRpb25GZWVSYXRlIDwgTnVtYmVyKHRoaXMudHJhbnNhY3Rpb24uX25ldHdvcmsubWluRGVsZWdhdGlvbkZlZSkpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoXG4gICAgICAgIGBEZWxlZ2F0aW9uIGZlZSBjYW5ub3QgYmUgbGVzcyB0aGFuICR7dGhpcy50cmFuc2FjdGlvbi5fbmV0d29yay5taW5EZWxlZ2F0aW9uRmVlfWBcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGluaXRCdWlsZGVyKHR4OiBUeCk6IHRoaXMge1xuICAgIHN1cGVyLmluaXRCdWlsZGVyKHR4KTtcbiAgICBjb25zdCBiYXNlVHg6IEJhc2VUeCA9IHR4LmdldFVuc2lnbmVkVHgoKS5nZXRUcmFuc2FjdGlvbigpO1xuICAgIGlmICghdGhpcy52ZXJpZnlUeFR5cGUoYmFzZVR4KSkge1xuICAgICAgdGhyb3cgbmV3IE5vdFN1cHBvcnRlZCgnVHJhbnNhY3Rpb24gY2Fubm90IGJlIHBhcnNlZCBvciBoYXMgYW4gdW5zdXBwb3J0ZWQgdHJhbnNhY3Rpb24gdHlwZScpO1xuICAgIH1cbiAgICB0aGlzLl9kZWxlZ2F0aW9uRmVlUmF0ZSA9IGJhc2VUeC5nZXREZWxlZ2F0aW9uRmVlKCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBzdGF0aWMgdmVyaWZ5VHhUeXBlKGJhc2VUeDogQmFzZVR4KTogYmFzZVR4IGlzIEFkZFZhbGlkYXRvclR4IHtcbiAgICByZXR1cm4gYmFzZVR4LmdldFR5cGVJRCgpID09PSBQbGF0Zm9ybVZNQ29uc3RhbnRzLkFERFZBTElEQVRPUlRYO1xuICB9XG5cbiAgdmVyaWZ5VHhUeXBlKGJhc2VUeDogQmFzZVR4KTogYmFzZVR4IGlzIEFkZFZhbGlkYXRvclR4IHtcbiAgICByZXR1cm4gVmFsaWRhdG9yVHhCdWlsZGVyLnZlcmlmeVR4VHlwZShiYXNlVHgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkIHRoZSB2YWxpZGF0b3IgdHJhbnNhY3Rpb25cbiAgICogQHByb3RlY3RlZFxuICAgKi9cbiAgcHJvdGVjdGVkIGJ1aWxkQXZheFRyYW5zYWN0aW9uKCk6IHZvaWQge1xuICAgIGNvbnN0IHsgaW5wdXRzLCBvdXRwdXRzLCBjcmVkZW50aWFscyB9ID0gdGhpcy5jcmVhdGVJbnB1dE91dHB1dCgpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uc2V0VHJhbnNhY3Rpb24oXG4gICAgICBuZXcgUFZNVHgoXG4gICAgICAgIG5ldyBVbnNpZ25lZFR4KFxuICAgICAgICAgIG5ldyBBZGRWYWxpZGF0b3JUeChcbiAgICAgICAgICAgIHRoaXMudHJhbnNhY3Rpb24uX25ldHdvcmtJRCxcbiAgICAgICAgICAgIHRoaXMudHJhbnNhY3Rpb24uX2Jsb2NrY2hhaW5JRCxcbiAgICAgICAgICAgIG91dHB1dHMsXG4gICAgICAgICAgICBpbnB1dHMsXG4gICAgICAgICAgICB1bmRlZmluZWQsXG4gICAgICAgICAgICB1dGlscy5Ob2RlSURTdHJpbmdUb0J1ZmZlcih0aGlzLl9ub2RlSUQpLFxuICAgICAgICAgICAgdGhpcy5fc3RhcnRUaW1lLFxuICAgICAgICAgICAgdGhpcy5fZW5kVGltZSxcbiAgICAgICAgICAgIHRoaXMuX3N0YWtlQW1vdW50LFxuICAgICAgICAgICAgW3RoaXMuc3Rha2VUcmFuc2Zlck91dCgpXSxcbiAgICAgICAgICAgIHRoaXMucmV3YXJkT3duZXJzT3V0cHV0KCksXG4gICAgICAgICAgICB0aGlzLl9kZWxlZ2F0aW9uRmVlUmF0ZVxuICAgICAgICAgIClcbiAgICAgICAgKSxcbiAgICAgICAgY3JlZGVudGlhbHNcbiAgICAgIClcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -66,7 +66,9 @@ export declare const ADDVALIDATOR_SAMPLES: {
|
|
|
66
66
|
fullsigntxHex: string;
|
|
67
67
|
recoveryUnsignedTxHex: string;
|
|
68
68
|
recoveryHalfsigntxHex: string;
|
|
69
|
+
recoveryFullsigntxHexWithoutMemo: string;
|
|
69
70
|
recoveryFullsigntxHex: string;
|
|
71
|
+
recoveryFullsigntxHexWithMemo: string;
|
|
70
72
|
privKey: {
|
|
71
73
|
prv1: string;
|
|
72
74
|
prv2: string;
|
|
@@ -80,7 +82,6 @@ export declare const ADDVALIDATOR_SAMPLES: {
|
|
|
80
82
|
addresses: string[];
|
|
81
83
|
threshold: number;
|
|
82
84
|
}[];
|
|
83
|
-
memo: string;
|
|
84
85
|
nodeID: string;
|
|
85
86
|
startTime: string;
|
|
86
87
|
endTime: string;
|
|
@@ -99,7 +100,6 @@ export declare const BUILD_AND_SIGN_ADD_VALIDATOR_SAMPLE: {
|
|
|
99
100
|
stakeAmount: string;
|
|
100
101
|
delegationFeeRate: number;
|
|
101
102
|
nodeId: string;
|
|
102
|
-
memo: string;
|
|
103
103
|
utxos: {
|
|
104
104
|
outputID: number;
|
|
105
105
|
amount: string;
|
|
@@ -140,7 +140,6 @@ export declare const EXPORT_P_2_C: {
|
|
|
140
140
|
addresses: string[];
|
|
141
141
|
threshold: number;
|
|
142
142
|
}[];
|
|
143
|
-
memo: string;
|
|
144
143
|
amount: string;
|
|
145
144
|
pAddresses: string[];
|
|
146
145
|
targetChainId: string;
|
|
@@ -152,7 +151,6 @@ export declare const EXPORT_P_2_C_VERIFY: {
|
|
|
152
151
|
amount: string;
|
|
153
152
|
receiveAddress: string;
|
|
154
153
|
receiveAddress2: string;
|
|
155
|
-
memo: string;
|
|
156
154
|
};
|
|
157
155
|
export declare const EXPORT_P_2_C_WITHOUT_CHANGEOUTPUT: {
|
|
158
156
|
txhash: string;
|
|
@@ -175,7 +173,6 @@ export declare const EXPORT_P_2_C_WITHOUT_CHANGEOUTPUT: {
|
|
|
175
173
|
addresses: string[];
|
|
176
174
|
threshold: number;
|
|
177
175
|
}[];
|
|
178
|
-
memo: string;
|
|
179
176
|
amount: string;
|
|
180
177
|
pAddresses: string[];
|
|
181
178
|
targetChainId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"avaxp.d.ts","sourceRoot":"","sources":["../../../test/resources/avaxp.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAE/B,eAAO,MAAM,YAAY;;;;;;;;;;;;CAcxB,CAAC;AAEF,eAAO,MAAM,SAAS;;;;;;;;CAQrB,CAAC;AAEF,eAAO,MAAM,SAAS;;;CAGrB,CAAC;AAEF,eAAO,MAAM,SAAS;;;;;;CAMrB,CAAC;AAEF,eAAO,MAAM,SAAS;;;;;;CAMrB,CAAC;AAEF,eAAO,MAAM,+BAA+B,4CAA4C,CAAC;AAEzF,eAAO,MAAM,sBAAsB,gBAAgB,CAAC;AAEpD,eAAO,MAAM,SAAS,4CAA4C,CAAC;AAEnE,eAAO,MAAM,oBAAoB,IAAe,CAAC;AAEjD,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAExC,eAAO,MAAM,UAAU,IAAyC,CAAC;AACjE,eAAO,MAAM,QAAQ,IAAiB,CAAC;AACvC,eAAO,MAAM,QAAQ,IAAmB,CAAC;AAEzC,eAAO,MAAM,yBAAyB,WAAW,CAAC;AAElD,eAAO,MAAM,iCAAiC,4BAA4B,CAAC;AAE3E,eAAO,MAAM,gCAAgC,2BAA2B,CAAC;AAEzE,eAAO,MAAM,wBAAwB,QAAiC,CAAC;AAEvE,eAAO,MAAM,uBAAuB,uCAAuC,CAAC;AAE5E,eAAO,MAAM,eAAe,oBAAoB,CAAC;AAEjD,eAAO,MAAM,aAAa,kDAAkD,CAAC;AAE7E,eAAO,MAAM,cAAc,sDAAsD,CAAC;AAElF,eAAO,MAAM,gBAAgB,qEAAqE,CAAC;AAEnG,eAAO,MAAM,uBAAuB,sEAAsE,CAAC;AAE3G,eAAO,MAAM,gBAAgB,mBAAmB,CAAC;AAEjD,eAAO,MAAM,gBAAgB,sDAAsD,CAAC;AAGpF,eAAO,MAAM,oBAAoB
|
|
1
|
+
{"version":3,"file":"avaxp.d.ts","sourceRoot":"","sources":["../../../test/resources/avaxp.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAE/B,eAAO,MAAM,YAAY;;;;;;;;;;;;CAcxB,CAAC;AAEF,eAAO,MAAM,SAAS;;;;;;;;CAQrB,CAAC;AAEF,eAAO,MAAM,SAAS;;;CAGrB,CAAC;AAEF,eAAO,MAAM,SAAS;;;;;;CAMrB,CAAC;AAEF,eAAO,MAAM,SAAS;;;;;;CAMrB,CAAC;AAEF,eAAO,MAAM,+BAA+B,4CAA4C,CAAC;AAEzF,eAAO,MAAM,sBAAsB,gBAAgB,CAAC;AAEpD,eAAO,MAAM,SAAS,4CAA4C,CAAC;AAEnE,eAAO,MAAM,oBAAoB,IAAe,CAAC;AAEjD,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAExC,eAAO,MAAM,UAAU,IAAyC,CAAC;AACjE,eAAO,MAAM,QAAQ,IAAiB,CAAC;AACvC,eAAO,MAAM,QAAQ,IAAmB,CAAC;AAEzC,eAAO,MAAM,yBAAyB,WAAW,CAAC;AAElD,eAAO,MAAM,iCAAiC,4BAA4B,CAAC;AAE3E,eAAO,MAAM,gCAAgC,2BAA2B,CAAC;AAEzE,eAAO,MAAM,wBAAwB,QAAiC,CAAC;AAEvE,eAAO,MAAM,uBAAuB,uCAAuC,CAAC;AAE5E,eAAO,MAAM,eAAe,oBAAoB,CAAC;AAEjD,eAAO,MAAM,aAAa,kDAAkD,CAAC;AAE7E,eAAO,MAAM,cAAc,sDAAsD,CAAC;AAElF,eAAO,MAAM,gBAAgB,qEAAqE,CAAC;AAEnG,eAAO,MAAM,uBAAuB,sEAAsE,CAAC;AAE3G,eAAO,MAAM,gBAAgB,mBAAmB,CAAC;AAEjD,eAAO,MAAM,gBAAgB,sDAAsD,CAAC;AAGpF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgYhC,CAAC;AACF,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;CAmD/C,CAAC;AAEF,eAAO,MAAM,uBAAuB;;;CAInC,CAAC;AAEF,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;CAkZxB,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;;CAM/B,CAAC;AAEF,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;CAkE7C,CAAC"}
|