@bitgo-beta/sdk-coin-dot 2.2.8-beta.166 → 2.2.8-beta.1660
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 → cjs/src}/dot.d.ts +8 -19
- package/dist/cjs/src/dot.d.ts.map +1 -0
- package/dist/cjs/src/dot.js +623 -0
- package/dist/cjs/src/index.d.ts.map +1 -0
- package/dist/{src → cjs/src}/index.js +6 -2
- package/dist/cjs/src/lib/addressInitializationBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/addressInitializationBuilder.js +182 -0
- package/dist/{src → cjs/src}/lib/batchTransactionBuilder.d.ts +1 -0
- package/dist/cjs/src/lib/batchTransactionBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/batchTransactionBuilder.js +229 -0
- package/dist/cjs/src/lib/claimBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/claimBuilder.js +117 -0
- package/dist/cjs/src/lib/errors.d.ts.map +1 -0
- package/dist/cjs/src/lib/errors.js +19 -0
- package/dist/{src → cjs/src}/lib/iface.d.ts +16 -13
- package/dist/cjs/src/lib/iface.d.ts.map +1 -0
- package/dist/cjs/src/lib/iface.js +128 -0
- package/dist/cjs/src/lib/iface_utils.d.ts.map +1 -0
- package/dist/cjs/src/lib/iface_utils.js +92 -0
- package/dist/{src → cjs/src}/lib/index.d.ts +2 -0
- package/dist/cjs/src/lib/index.d.ts.map +1 -0
- package/dist/cjs/src/lib/index.js +73 -0
- package/dist/{src → cjs/src}/lib/keyPair.d.ts +7 -0
- package/dist/cjs/src/lib/keyPair.d.ts.map +1 -0
- package/dist/cjs/src/lib/keyPair.js +117 -0
- package/dist/cjs/src/lib/nativeTransferBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/nativeTransferBuilder.js +219 -0
- package/dist/cjs/src/lib/proxyBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/proxyBuilder.js +116 -0
- package/dist/cjs/src/lib/singletonRegistry.d.ts.map +1 -0
- package/dist/cjs/src/lib/singletonRegistry.js +20 -0
- package/dist/cjs/src/lib/stakingBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/stakingBuilder.js +167 -0
- package/dist/{src → cjs/src}/lib/transaction.d.ts +0 -1
- package/dist/cjs/src/lib/transaction.d.ts.map +1 -0
- package/dist/cjs/src/lib/transaction.js +624 -0
- package/dist/{src → cjs/src}/lib/transactionBuilder.d.ts +0 -1
- package/dist/cjs/src/lib/transactionBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/transactionBuilder.js +351 -0
- package/dist/cjs/src/lib/transactionBuilderFactory.d.ts.map +1 -0
- package/dist/cjs/src/lib/transactionBuilderFactory.js +104 -0
- package/dist/cjs/src/lib/transferBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/transferBuilder.js +11 -0
- package/dist/cjs/src/lib/txnSchema.d.ts.map +1 -0
- package/dist/cjs/src/lib/txnSchema.js +117 -0
- package/dist/cjs/src/lib/unnominateBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/unnominateBuilder.js +48 -0
- package/dist/cjs/src/lib/unstakeBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/unstakeBuilder.js +87 -0
- package/dist/{src → cjs/src}/lib/utils.d.ts +10 -2
- package/dist/cjs/src/lib/utils.d.ts.map +1 -0
- package/dist/cjs/src/lib/utils.js +491 -0
- package/dist/cjs/src/lib/wasmParser.d.ts +57 -0
- package/dist/cjs/src/lib/wasmParser.d.ts.map +1 -0
- package/dist/cjs/src/lib/wasmParser.js +345 -0
- package/dist/cjs/src/lib/withdrawUnstakedBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/withdrawUnstakedBuilder.js +88 -0
- package/dist/cjs/src/register.d.ts.map +1 -0
- package/dist/cjs/src/register.js +11 -0
- package/dist/cjs/src/resources/index.d.ts +5 -0
- package/dist/cjs/src/resources/index.d.ts.map +1 -0
- package/dist/cjs/src/resources/index.js +21 -0
- package/dist/cjs/src/resources/mainnet.d.ts.map +1 -0
- package/dist/cjs/src/resources/mainnet.js +5 -0
- package/dist/cjs/src/resources/polkadotAssetHub.d.ts +2 -0
- package/dist/cjs/src/resources/polkadotAssetHub.d.ts.map +1 -0
- package/dist/cjs/src/resources/polkadotAssetHub.js +5 -0
- package/dist/cjs/src/resources/westend.d.ts.map +1 -0
- package/dist/cjs/src/resources/westend.js +5 -0
- package/dist/cjs/src/resources/westendAssetHub.d.ts +2 -0
- package/dist/cjs/src/resources/westendAssetHub.d.ts.map +1 -0
- package/dist/cjs/src/resources/westendAssetHub.js +5 -0
- package/dist/cjs/src/tdot.d.ts.map +1 -0
- package/dist/cjs/src/tdot.js +27 -0
- package/dist/cjs/test/fixtures.d.ts +283 -0
- package/dist/cjs/test/fixtures.d.ts.map +1 -0
- package/dist/cjs/test/fixtures.js +439 -0
- package/dist/cjs/test/resources/index.d.ts +141 -0
- package/dist/cjs/test/resources/index.d.ts.map +1 -0
- package/dist/cjs/test/resources/index.js +157 -0
- package/dist/cjs/test/resources/materialData.json +8 -0
- package/dist/cjs/test/resources/materialDataModified.json +8 -0
- package/dist/cjs/test/resources/testnet.d.ts +2 -0
- package/dist/cjs/test/resources/testnet.d.ts.map +1 -0
- package/dist/{src/resources/westend.js → cjs/test/resources/testnet.js} +3 -3
- package/dist/cjs/test/unit/address.d.ts +2 -0
- package/dist/cjs/test/unit/address.d.ts.map +1 -0
- package/dist/cjs/test/unit/address.js +45 -0
- package/dist/cjs/test/unit/dot.d.ts +2 -0
- package/dist/cjs/test/unit/dot.d.ts.map +1 -0
- package/dist/cjs/test/unit/dot.js +944 -0
- package/dist/cjs/test/unit/keypair.d.ts +2 -0
- package/dist/cjs/test/unit/keypair.d.ts.map +1 -0
- package/dist/cjs/test/unit/keypair.js +111 -0
- package/dist/cjs/test/unit/transaction.d.ts +2 -0
- package/dist/cjs/test/unit/transaction.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction.js +269 -0
- package/dist/cjs/test/unit/transactionBuilder/addressInitializationBuilder.d.ts +2 -0
- package/dist/cjs/test/unit/transactionBuilder/addressInitializationBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/addressInitializationBuilder.js +265 -0
- package/dist/cjs/test/unit/transactionBuilder/base.d.ts +8 -0
- package/dist/cjs/test/unit/transactionBuilder/base.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/base.js +233 -0
- package/dist/cjs/test/unit/transactionBuilder/batchTransactionBuilder.d.ts +2 -0
- package/dist/cjs/test/unit/transactionBuilder/batchTransactionBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/batchTransactionBuilder.js +521 -0
- package/dist/cjs/test/unit/transactionBuilder/claimBuilder.d.ts +2 -0
- package/dist/cjs/test/unit/transactionBuilder/claimBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/claimBuilder.js +129 -0
- package/dist/cjs/test/unit/transactionBuilder/proxyBuilder.d.ts +2 -0
- package/dist/cjs/test/unit/transactionBuilder/proxyBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/proxyBuilder.js +88 -0
- package/dist/cjs/test/unit/transactionBuilder/singeltonRegistry.d.ts +2 -0
- package/dist/cjs/test/unit/transactionBuilder/singeltonRegistry.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/singeltonRegistry.js +59 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingBuilder.d.ts +2 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingBuilder.js +235 -0
- package/dist/cjs/test/unit/transactionBuilder/transactionBuilderFactory.d.ts +2 -0
- package/dist/cjs/test/unit/transactionBuilder/transactionBuilderFactory.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/transactionBuilderFactory.js +107 -0
- package/dist/cjs/test/unit/transactionBuilder/transferBuilder.d.ts +2 -0
- package/dist/cjs/test/unit/transactionBuilder/transferBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/transferBuilder.js +437 -0
- package/dist/cjs/test/unit/transactionBuilder/unnominateBuilder.d.ts +2 -0
- package/dist/cjs/test/unit/transactionBuilder/unnominateBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/unnominateBuilder.js +97 -0
- package/dist/cjs/test/unit/transactionBuilder/unstakeBuilder.d.ts +2 -0
- package/dist/cjs/test/unit/transactionBuilder/unstakeBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/unstakeBuilder.js +116 -0
- package/dist/cjs/test/unit/transactionBuilder/withdrawUnstakedBuilder.d.ts +2 -0
- package/dist/cjs/test/unit/transactionBuilder/withdrawUnstakedBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/withdrawUnstakedBuilder.js +115 -0
- package/dist/cjs/test/unit/utils.d.ts +2 -0
- package/dist/cjs/test/unit/utils.d.ts.map +1 -0
- package/dist/cjs/test/unit/utils.js +117 -0
- package/dist/cjs/test/unit/wasmBuilderByteComparison.d.ts +22 -0
- package/dist/cjs/test/unit/wasmBuilderByteComparison.d.ts.map +1 -0
- package/dist/cjs/test/unit/wasmBuilderByteComparison.js +197 -0
- package/dist/cjs/test/unit/wasmParserExplanation.d.ts +15 -0
- package/dist/cjs/test/unit/wasmParserExplanation.d.ts.map +1 -0
- package/dist/cjs/test/unit/wasmParserExplanation.js +147 -0
- package/dist/cjs/tsconfig.tsbuildinfo +1 -0
- package/dist/esm/dot.d.ts +147 -0
- package/dist/esm/dot.d.ts.map +1 -0
- package/dist/esm/dot.js +583 -0
- package/dist/esm/index.d.ts +5 -0
- package/dist/esm/index.js +5 -0
- package/dist/esm/lib/addressInitializationBuilder.d.ts +79 -0
- package/dist/esm/lib/addressInitializationBuilder.js +175 -0
- package/dist/esm/lib/batchTransactionBuilder.d.ts +62 -0
- package/dist/{src → esm}/lib/batchTransactionBuilder.d.ts.map +1 -1
- package/dist/esm/lib/batchTransactionBuilder.js +222 -0
- package/dist/esm/lib/claimBuilder.d.ts +58 -0
- package/dist/esm/lib/claimBuilder.js +110 -0
- package/dist/esm/lib/errors.d.ts +8 -0
- package/dist/esm/lib/errors.js +14 -0
- package/dist/esm/lib/iface.d.ts +337 -0
- package/dist/esm/lib/iface.d.ts.map +1 -0
- package/dist/esm/lib/iface.js +125 -0
- package/dist/esm/lib/iface_utils.d.ts +59 -0
- package/dist/esm/lib/iface_utils.js +83 -0
- package/dist/esm/lib/index.d.ts +21 -0
- package/dist/{src → esm}/lib/index.d.ts.map +1 -1
- package/dist/esm/lib/index.js +20 -0
- package/dist/esm/lib/keyPair.d.ts +38 -0
- package/dist/esm/lib/keyPair.d.ts.map +1 -0
- package/dist/esm/lib/keyPair.js +77 -0
- package/dist/esm/lib/nativeTransferBuilder.d.ts +84 -0
- package/dist/esm/lib/nativeTransferBuilder.js +212 -0
- package/dist/esm/lib/proxyBuilder.d.ts +54 -0
- package/dist/esm/lib/proxyBuilder.js +109 -0
- package/dist/esm/lib/singletonRegistry.d.ts +7 -0
- package/dist/esm/lib/singletonRegistry.js +16 -0
- package/dist/esm/lib/stakingBuilder.d.ts +66 -0
- package/dist/esm/lib/stakingBuilder.js +160 -0
- package/dist/esm/lib/transaction.d.ts +83 -0
- package/dist/esm/lib/transaction.d.ts.map +1 -0
- package/dist/esm/lib/transaction.js +584 -0
- package/dist/esm/lib/transactionBuilder.d.ts +131 -0
- package/dist/esm/lib/transactionBuilder.d.ts.map +1 -0
- package/dist/esm/lib/transactionBuilder.js +311 -0
- package/dist/esm/lib/transactionBuilderFactory.d.ts +28 -0
- package/dist/esm/lib/transactionBuilderFactory.js +97 -0
- package/dist/esm/lib/transferBuilder.d.ts +11 -0
- package/dist/esm/lib/transferBuilder.js +7 -0
- package/dist/esm/lib/txnSchema.d.ts +15 -0
- package/dist/esm/lib/txnSchema.js +111 -0
- package/dist/esm/lib/unnominateBuilder.d.ts +24 -0
- package/dist/esm/lib/unnominateBuilder.js +44 -0
- package/dist/esm/lib/unstakeBuilder.d.ts +38 -0
- package/dist/esm/lib/unstakeBuilder.js +80 -0
- package/dist/esm/lib/utils.d.ts +261 -0
- package/dist/esm/lib/utils.d.ts.map +1 -0
- package/dist/esm/lib/utils.js +451 -0
- package/dist/esm/lib/wasmParser.d.ts +57 -0
- package/dist/esm/lib/wasmParser.d.ts.map +1 -0
- package/dist/esm/lib/wasmParser.js +341 -0
- package/dist/esm/lib/withdrawUnstakedBuilder.d.ts +38 -0
- package/dist/esm/lib/withdrawUnstakedBuilder.js +81 -0
- package/dist/esm/register.d.ts +3 -0
- package/dist/esm/register.js +7 -0
- package/dist/esm/resources/index.d.ts +5 -0
- package/dist/{src → esm}/resources/index.d.ts.map +1 -1
- package/dist/esm/resources/index.js +5 -0
- package/dist/esm/resources/mainnet.d.ts +2 -0
- package/dist/esm/resources/mainnet.js +2 -0
- package/dist/esm/resources/polkadotAssetHub.d.ts +2 -0
- package/dist/esm/resources/polkadotAssetHub.d.ts.map +1 -0
- package/dist/esm/resources/polkadotAssetHub.js +2 -0
- package/dist/esm/resources/westend.d.ts +2 -0
- package/dist/esm/resources/westend.js +2 -0
- package/dist/esm/resources/westendAssetHub.d.ts +2 -0
- package/dist/esm/resources/westendAssetHub.d.ts.map +1 -0
- package/dist/esm/resources/westendAssetHub.js +2 -0
- package/dist/esm/tdot.d.ts +12 -0
- package/dist/esm/tdot.js +23 -0
- package/package.json +42 -20
- package/.eslintignore +0 -5
- package/.mocharc.yml +0 -8
- package/CHANGELOG.md +0 -450
- package/dist/src/dot.d.ts.map +0 -1
- package/dist/src/dot.js +0 -562
- package/dist/src/lib/addressInitializationBuilder.js +0 -184
- package/dist/src/lib/batchTransactionBuilder.js +0 -220
- package/dist/src/lib/claimBuilder.js +0 -119
- package/dist/src/lib/errors.js +0 -19
- package/dist/src/lib/iface.d.ts.map +0 -1
- package/dist/src/lib/iface.js +0 -128
- package/dist/src/lib/iface_utils.js +0 -93
- package/dist/src/lib/index.js +0 -57
- package/dist/src/lib/keyPair.d.ts.map +0 -1
- package/dist/src/lib/keyPair.js +0 -70
- package/dist/src/lib/nativeTransferBuilder.js +0 -221
- package/dist/src/lib/proxyBuilder.js +0 -118
- package/dist/src/lib/singletonRegistry.js +0 -20
- package/dist/src/lib/stakingBuilder.js +0 -169
- package/dist/src/lib/transaction.d.ts.map +0 -1
- package/dist/src/lib/transaction.js +0 -590
- package/dist/src/lib/transactionBuilder.d.ts.map +0 -1
- package/dist/src/lib/transactionBuilder.js +0 -337
- package/dist/src/lib/transactionBuilderFactory.js +0 -105
- package/dist/src/lib/transferBuilder.js +0 -11
- package/dist/src/lib/txnSchema.js +0 -117
- package/dist/src/lib/unnominateBuilder.js +0 -50
- package/dist/src/lib/unstakeBuilder.js +0 -89
- package/dist/src/lib/utils.d.ts.map +0 -1
- package/dist/src/lib/utils.js +0 -458
- package/dist/src/lib/withdrawUnstakedBuilder.js +0 -90
- package/dist/src/register.js +0 -11
- package/dist/src/resources/index.d.ts +0 -3
- package/dist/src/resources/index.js +0 -15
- package/dist/src/resources/mainnet.js +0 -5
- package/dist/src/tdot.js +0 -27
- /package/dist/{src → cjs/src}/index.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/addressInitializationBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/claimBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/errors.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/iface_utils.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/nativeTransferBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/proxyBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/singletonRegistry.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/stakingBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/transactionBuilderFactory.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/transferBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/txnSchema.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/unnominateBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/unstakeBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/withdrawUnstakedBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/register.d.ts +0 -0
- /package/dist/{src → cjs/src}/resources/mainnet.d.ts +0 -0
- /package/dist/{src → cjs/src}/resources/westend.d.ts +0 -0
- /package/dist/{src → cjs/src}/tdot.d.ts +0 -0
- /package/dist/{src → esm}/index.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/addressInitializationBuilder.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/claimBuilder.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/errors.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/iface_utils.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/nativeTransferBuilder.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/proxyBuilder.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/singletonRegistry.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/stakingBuilder.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/transactionBuilderFactory.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/transferBuilder.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/txnSchema.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/unnominateBuilder.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/unstakeBuilder.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/withdrawUnstakedBuilder.d.ts.map +0 -0
- /package/dist/{src → esm}/register.d.ts.map +0 -0
- /package/dist/{src → esm}/resources/mainnet.d.ts.map +0 -0
- /package/dist/{src → esm}/resources/westend.d.ts.map +0 -0
- /package/dist/{src → esm}/tdot.d.ts.map +0 -0
|
@@ -1,184 +0,0 @@
|
|
|
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.AddressInitializationBuilder = void 0;
|
|
7
|
-
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
8
|
-
const txwrapper_polkadot_1 = require("@substrate/txwrapper-polkadot");
|
|
9
|
-
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
10
|
-
const iface_1 = require("./iface");
|
|
11
|
-
const iface_utils_1 = require("./iface_utils");
|
|
12
|
-
const transactionBuilder_1 = require("./transactionBuilder");
|
|
13
|
-
const txnSchema_1 = require("./txnSchema");
|
|
14
|
-
const utils_1 = __importDefault(require("./utils"));
|
|
15
|
-
class AddressInitializationBuilder extends transactionBuilder_1.TransactionBuilder {
|
|
16
|
-
constructor(_coinConfig) {
|
|
17
|
-
super(_coinConfig);
|
|
18
|
-
this._index = 0;
|
|
19
|
-
}
|
|
20
|
-
/** @inheritDoc */
|
|
21
|
-
buildTransaction() {
|
|
22
|
-
if (this._delegate) {
|
|
23
|
-
return this.buildAddProxyTransaction();
|
|
24
|
-
}
|
|
25
|
-
else {
|
|
26
|
-
return this.buildAnonymousProxyTransaction();
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* Register a proxy account for the sender that is able to make calls on its behalf.
|
|
31
|
-
*
|
|
32
|
-
* @returns {UnsignedTransaction} an unsigned Dot transaction
|
|
33
|
-
*
|
|
34
|
-
* @see https://polkadot.js.org/docs/substrate/extrinsics/#proxy
|
|
35
|
-
*/
|
|
36
|
-
buildAddProxyTransaction() {
|
|
37
|
-
const baseTxInfo = this.createBaseTxInfo();
|
|
38
|
-
return txwrapper_polkadot_1.methods.proxy.addProxy({
|
|
39
|
-
delegate: this._delegate,
|
|
40
|
-
proxyType: this._proxyType,
|
|
41
|
-
delay: this._delay,
|
|
42
|
-
}, baseTxInfo.baseTxInfo, baseTxInfo.options);
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Spawn a receive address for the sender
|
|
46
|
-
*
|
|
47
|
-
* @return {UnsignedTransaction} an unsigned Dot transaction
|
|
48
|
-
*/
|
|
49
|
-
buildAnonymousProxyTransaction() {
|
|
50
|
-
const baseTxInfo = this.createBaseTxInfo();
|
|
51
|
-
return utils_1.default.pureProxy({
|
|
52
|
-
proxyType: this._proxyType,
|
|
53
|
-
index: this._index,
|
|
54
|
-
delay: parseInt(this._delay, 10),
|
|
55
|
-
}, baseTxInfo.baseTxInfo, baseTxInfo.options);
|
|
56
|
-
}
|
|
57
|
-
get transactionType() {
|
|
58
|
-
return sdk_core_1.TransactionType.AddressInitialization;
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* The account to delegate auth to.
|
|
62
|
-
*
|
|
63
|
-
* @param {BaseAddress} owner
|
|
64
|
-
* @returns {AddressInitializationBuilder} This builder.
|
|
65
|
-
*
|
|
66
|
-
* @see https://wiki.polkadot.network/docs/learn-proxies#why-use-a-proxy
|
|
67
|
-
*/
|
|
68
|
-
owner(owner) {
|
|
69
|
-
this.validateAddress({ address: owner.address });
|
|
70
|
-
this._delegate = owner.address;
|
|
71
|
-
return this;
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* Used for disambiguation if multiple calls are made in the same transaction
|
|
75
|
-
* Use 0 as a default
|
|
76
|
-
*
|
|
77
|
-
* @param {number} index
|
|
78
|
-
*
|
|
79
|
-
* @returns {AddressInitializationBuilder} This transfer builder.
|
|
80
|
-
*/
|
|
81
|
-
index(index) {
|
|
82
|
-
this.validateValue(new bignumber_js_1.default(index));
|
|
83
|
-
this._index = index;
|
|
84
|
-
return this;
|
|
85
|
-
}
|
|
86
|
-
/**
|
|
87
|
-
* The proxy type to add.
|
|
88
|
-
*
|
|
89
|
-
* @param {proxyType} proxyType
|
|
90
|
-
* @returns {AddressInitializationBuilder} This builder.
|
|
91
|
-
*
|
|
92
|
-
* @see https://wiki.polkadot.network/docs/learn-proxies#proxy-types
|
|
93
|
-
*/
|
|
94
|
-
type(proxyType) {
|
|
95
|
-
this._proxyType = proxyType;
|
|
96
|
-
return this;
|
|
97
|
-
}
|
|
98
|
-
/**
|
|
99
|
-
* The number of blocks that an announcement must be in place for.
|
|
100
|
-
* before the corresponding call may be dispatched.
|
|
101
|
-
* If zero, then no announcement is needed.
|
|
102
|
-
* TODO: move to the validity window method once it has been standardized
|
|
103
|
-
*
|
|
104
|
-
* @param {string} delay
|
|
105
|
-
* @returns {AddressInitializationBuilder} This transfer builder.
|
|
106
|
-
*
|
|
107
|
-
* @see https://wiki.polkadot.network/docs/learn-proxies#time-delayed-proxies
|
|
108
|
-
*/
|
|
109
|
-
delay(delay) {
|
|
110
|
-
this.validateValue(new bignumber_js_1.default(parseInt(delay, 10)));
|
|
111
|
-
this._delay = delay;
|
|
112
|
-
return this;
|
|
113
|
-
}
|
|
114
|
-
/** @inheritdoc */
|
|
115
|
-
validateDecodedTransaction(decodedTxn) {
|
|
116
|
-
var _a, _b, _c;
|
|
117
|
-
let validationResult;
|
|
118
|
-
if (((_a = decodedTxn.method) === null || _a === void 0 ? void 0 : _a.name) === iface_1.MethodNames.AddProxy) {
|
|
119
|
-
const txMethod = decodedTxn.method.args;
|
|
120
|
-
validationResult = this.validateAddProxyFields(iface_utils_1.getDelegateAddress(txMethod), txMethod.proxyType, txMethod.delay);
|
|
121
|
-
}
|
|
122
|
-
else if (((_b = decodedTxn.method) === null || _b === void 0 ? void 0 : _b.name) === iface_1.MethodNames.Anonymous || ((_c = decodedTxn.method) === null || _c === void 0 ? void 0 : _c.name) === iface_1.MethodNames.PureProxy) {
|
|
123
|
-
const txMethod = decodedTxn.method.args;
|
|
124
|
-
validationResult = this.validateAnonymousProxyFields(parseInt(txMethod.index, 10), txMethod.proxyType, txMethod.delay);
|
|
125
|
-
}
|
|
126
|
-
if (validationResult.error) {
|
|
127
|
-
throw new sdk_core_1.InvalidTransactionError(`Transaction validation failed: ${validationResult.error.message}`);
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
/** @inheritdoc */
|
|
131
|
-
fromImplementation(rawTransaction) {
|
|
132
|
-
var _a, _b, _c, _d;
|
|
133
|
-
const tx = super.fromImplementation(rawTransaction);
|
|
134
|
-
if (((_a = this._method) === null || _a === void 0 ? void 0 : _a.name) === iface_1.MethodNames.AddProxy) {
|
|
135
|
-
const txMethod = this._method.args;
|
|
136
|
-
this.owner({ address: iface_utils_1.getDelegateAddress(txMethod) });
|
|
137
|
-
this.type(txMethod.proxyType);
|
|
138
|
-
this.delay(new bignumber_js_1.default(txMethod.delay).toString());
|
|
139
|
-
}
|
|
140
|
-
else if (((_b = this._method) === null || _b === void 0 ? void 0 : _b.name) === iface_1.MethodNames.Anonymous || ((_c = this._method) === null || _c === void 0 ? void 0 : _c.name) === iface_1.MethodNames.PureProxy) {
|
|
141
|
-
const txMethod = this._method.args;
|
|
142
|
-
this.index(new bignumber_js_1.default(txMethod.index).toNumber());
|
|
143
|
-
this.type(txMethod.proxyType);
|
|
144
|
-
this.delay(new bignumber_js_1.default(txMethod.delay).toString());
|
|
145
|
-
}
|
|
146
|
-
else {
|
|
147
|
-
throw new sdk_core_1.InvalidTransactionError(`Invalid Transaction Type: ${(_d = this._method) === null || _d === void 0 ? void 0 : _d.name}. Expected ${iface_1.MethodNames.AddProxy} or ${iface_1.MethodNames.Anonymous}`);
|
|
148
|
-
}
|
|
149
|
-
return tx;
|
|
150
|
-
}
|
|
151
|
-
/** @inheritdoc */
|
|
152
|
-
validateTransaction(_) {
|
|
153
|
-
super.validateTransaction(_);
|
|
154
|
-
this.validateFields();
|
|
155
|
-
}
|
|
156
|
-
validateFields() {
|
|
157
|
-
let validationResult;
|
|
158
|
-
if (this._delegate) {
|
|
159
|
-
validationResult = this.validateAddProxyFields(this._delegate, this._proxyType, this._delay);
|
|
160
|
-
}
|
|
161
|
-
else {
|
|
162
|
-
validationResult = this.validateAnonymousProxyFields(this._index, this._proxyType, this._delay);
|
|
163
|
-
}
|
|
164
|
-
if (validationResult.error) {
|
|
165
|
-
throw new sdk_core_1.InvalidTransactionError(`AddressInitialization Transaction validation failed: ${validationResult.error.message}`);
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
validateAddProxyFields(delegate, proxyType, delay) {
|
|
169
|
-
return txnSchema_1.AddressInitializationSchema.validate({
|
|
170
|
-
delegate,
|
|
171
|
-
proxyType,
|
|
172
|
-
delay,
|
|
173
|
-
});
|
|
174
|
-
}
|
|
175
|
-
validateAnonymousProxyFields(index, proxyType, delay) {
|
|
176
|
-
return txnSchema_1.AnonymousAddressInitializationSchema.validate({
|
|
177
|
-
proxyType,
|
|
178
|
-
index,
|
|
179
|
-
delay,
|
|
180
|
-
});
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
exports.AddressInitializationBuilder = AddressInitializationBuilder;
|
|
184
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkcmVzc0luaXRpYWxpemF0aW9uQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvYWRkcmVzc0luaXRpYWxpemF0aW9uQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxtREFBNkY7QUFHN0Ysc0VBQXdEO0FBQ3hELGdFQUFxQztBQUVyQyxtQ0FBc0Y7QUFDdEYsK0NBQW1EO0FBRW5ELDZEQUEwRDtBQUMxRCwyQ0FBZ0c7QUFDaEcsb0RBQTRCO0FBRTVCLE1BQWEsNEJBQTZCLFNBQVEsdUNBQWtCO0lBTWxFLFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBSFgsV0FBTSxHQUFHLENBQUMsQ0FBQztJQUlyQixDQUFDO0lBRUQsa0JBQWtCO0lBQ1IsZ0JBQWdCO1FBQ3hCLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNsQixPQUFPLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1NBQ3hDO2FBQU07WUFDTCxPQUFPLElBQUksQ0FBQyw4QkFBOEIsRUFBRSxDQUFDO1NBQzlDO0lBQ0gsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNPLHdCQUF3QjtRQUNoQyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUMzQyxPQUFPLDRCQUFPLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FDM0I7WUFDRSxRQUFRLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDeEIsU0FBUyxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQzFCLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTTtTQUNuQixFQUNELFVBQVUsQ0FBQyxVQUFVLEVBQ3JCLFVBQVUsQ0FBQyxPQUFPLENBQ25CLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNPLDhCQUE4QjtRQUN0QyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUMzQyxPQUFPLGVB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bEIsbUJBQW1CLENBQUMsQ0FBYztRQUNoQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFTyxjQUFjO1FBQ3BCLElBQUksZ0JBQWtDLENBQUM7UUFDdkMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2xCLGdCQUFnQixHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQzlGO2FBQU07WUFDTCxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsNEJBQTRCLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUNqRztRQUNELElBQUksZ0JBQWdCLENBQUMsS0FBSyxFQUFFO1lBQzFCLE1BQU0sSUFBSSxrQ0FBdUIsQ0FDL0Isd0RBQXdELGdCQUFnQixDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FDekYsQ0FBQztTQUNIO0lBQ0gsQ0FBQztJQUVPLHNCQUFzQixDQUFDLFFBQWdCLEVBQUUsU0FBaUIsRUFBRSxLQUFhO1FBQy9FLE9BQU8sdUNBQTJCLENBQUMsUUFBUSxDQUFDO1lBQzFDLFFBQVE7WUFDUixTQUFTO1lBQ1QsS0FBSztTQUNOLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyw0QkFBNEIsQ0FBQyxLQUFhLEVBQUUsU0FBaUIsRUFBRSxLQUFhO1FBQ2xGLE9BQU8sZ0RBQW9DLENBQUMsUUFBUSxDQUFDO1lBQ25ELFNBQVM7WUFDVCxLQUFLO1lBQ0wsS0FBSztTQUNOLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQWxNRCxvRUFrTUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQWRkcmVzcywgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IsIFRyYW5zYWN0aW9uVHlwZSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IERlY29kZWRTaWduZWRUeCwgRGVjb2RlZFNpZ25pbmdQYXlsb2FkLCBVbnNpZ25lZFRyYW5zYWN0aW9uIH0gZnJvbSAnQHN1YnN0cmF0ZS90eHdyYXBwZXItY29yZSc7XG5pbXBvcnQgeyBtZXRob2RzIH0gZnJvbSAnQHN1YnN0cmF0ZS90eHdyYXBwZXItcG9sa2Fkb3QnO1xuaW1wb3J0IEJpZ051bWJlciBmcm9tICdiaWdudW1iZXIuanMnO1xuaW1wb3J0IHsgVmFsaWRhdGlvblJlc3VsdCB9IGZyb20gJ2pvaSc7XG5pbXBvcnQgeyBBZGRBbm9ueW1vdXNQcm94eUFyZ3MsIEFkZFByb3h5QXJncywgTWV0aG9kTmFtZXMsIFByb3h5VHlwZSB9IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHsgZ2V0RGVsZWdhdGVBZGRyZXNzIH0gZnJvbSAnLi9pZmFjZV91dGlscyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXInO1xuaW1wb3J0IHsgQWRkcmVzc0luaXRpYWxpemF0aW9uU2NoZW1hLCBBbm9ueW1vdXNBZGRyZXNzSW5pdGlhbGl6YXRpb25TY2hlbWEgfSBmcm9tICcuL3R4blNjaGVtYSc7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjbGFzcyBBZGRyZXNzSW5pdGlhbGl6YXRpb25CdWlsZGVyIGV4dGVuZHMgVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgcHJvdGVjdGVkIF9kZWxlZ2F0ZTogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX3Byb3h5VHlwZTogUHJveHlUeXBlO1xuICBwcm90ZWN0ZWQgX2RlbGF5OiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfaW5kZXggPSAwO1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdERvYyAqL1xuICBwcm90ZWN0ZWQgYnVpbGRUcmFuc2FjdGlvbigpOiBVbnNpZ25lZFRyYW5zYWN0aW9uIHtcbiAgICBpZiAodGhpcy5fZGVsZWdhdGUpIHtcbiAgICAgIHJldHVybiB0aGlzLmJ1aWxkQWRkUHJveHlUcmFuc2FjdGlvbigpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5idWlsZEFub255bW91c1Byb3h5VHJhbnNhY3Rpb24oKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmVnaXN0ZXIgYSBwcm94eSBhY2NvdW50IGZvciB0aGUgc2VuZGVyIHRoYXQgaXMgYWJsZSB0byBtYWtlIGNhbGxzIG9uIGl0cyBiZWhhbGYuXG4gICAqXG4gICAqIEByZXR1cm5zIHtVbnNpZ25lZFRyYW5zYWN0aW9ufSBhbiB1bnNpZ25lZCBEb3QgdHJhbnNhY3Rpb25cbiAgICpcbiAgICogQHNlZSBodHRwczovL3BvbGthZG90LmpzLm9yZy9kb2NzL3N1YnN0cmF0ZS9leHRyaW5zaWNzLyNwcm94eVxuICAgKi9cbiAgcHJvdGVjdGVkIGJ1aWxkQWRkUHJveHlUcmFuc2FjdGlvbigpOiBVbnNpZ25lZFRyYW5zYWN0aW9uIHtcbiAgICBjb25zdCBiYXNlVHhJbmZvID0gdGhpcy5jcmVhdGVCYXNlVHhJbmZvKCk7XG4gICAgcmV0dXJuIG1ldGhvZHMucHJveHkuYWRkUHJveHkoXG4gICAgICB7XG4gICAgICAgIGRlbGVnYXRlOiB0aGlzLl9kZWxlZ2F0ZSxcbiAgICAgICAgcHJveHlUeXBlOiB0aGlzLl9wcm94eVR5cGUsXG4gICAgICAgIGRlbGF5OiB0aGlzLl9kZWxheSxcbiAgICAgIH0sXG4gICAgICBiYXNlVHhJbmZvLmJhc2VUeEluZm8sXG4gICAgICBiYXNlVHhJbmZvLm9wdGlvbnNcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFNwYXduIGEgcmVjZWl2ZSBhZGRyZXNzIGZvciB0aGUgc2VuZGVyXG4gICAqXG4gICAqIEByZXR1cm4ge1Vuc2lnbmVkVHJhbnNhY3Rpb259IGFuIHVuc2lnbmVkIERvdCB0cmFuc2FjdGlvblxuICAgKi9cbiAgcHJvdGVjdGVkIGJ1aWxkQW5vbnltb3VzUHJveHlUcmFuc2FjdGlvbigpOiBVbnNpZ25lZFRyYW5zYWN0aW9uIHtcbiAgICBjb25zdCBiYXNlVHhJbmZvID0gdGhpcy5jcmVhdGVCYXNlVHhJbmZvKCk7XG4gICAgcmV0dXJuIHV0aWxzLnB1cmVQcm94eShcbiAgICAgIHtcbiAgICAgICAgcHJveHlUeXBlOiB0aGlzLl9wcm94eVR5cGUsXG4gICAgICAgIGluZGV4OiB0aGlzLl9pbmRleCxcbiAgICAgICAgZGVsYXk6IHBhcnNlSW50KHRoaXMuX2RlbGF5LCAxMCksXG4gICAgICB9LFxuICAgICAgYmFzZVR4SW5mby5iYXNlVHhJbmZvLFxuICAgICAgYmFzZVR4SW5mby5vcHRpb25zXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgdHJhbnNhY3Rpb25UeXBlKCk6IFRyYW5zYWN0aW9uVHlwZSB7XG4gICAgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5BZGRyZXNzSW5pdGlhbGl6YXRpb247XG4gIH1cblxuICAvKipcbiAgICogVGhlIGFjY291bnQgdG8gZGVsZWdhdGUgYXV0aCB0by5cbiAgICpcbiAgICogQHBhcmFtIHtCYXNlQWRkcmVzc30gb3duZXJcbiAgICogQHJldHVybnMge0FkZHJlc3NJbml0aWFsaXphdGlvbkJ1aWxkZXJ9IFRoaXMgYnVpbGRlci5cbiAgICpcbiAgICogQHNlZSBodHRwczovL3dpa2kucG9sa2Fkb3QubmV0d29yay9kb2NzL2xlYXJuLXByb3hpZXMjd2h5LXVzZS1hLXByb3h5XG4gICAqL1xuICBvd25lcihvd25lcjogQmFzZUFkZHJlc3MpOiB0aGlzIHtcbiAgICB0aGlzLnZhbGlkYXRlQWRkcmVzcyh7IGFkZHJlc3M6IG93bmVyLmFkZHJlc3MgfSk7XG4gICAgdGhpcy5fZGVsZWdhdGUgPSBvd25lci5hZGRyZXNzO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFVzZWQgZm9yIGRpc2FtYmlndWF0aW9uIGlmIG11bHRpcGxlIGNhbGxzIGFyZSBtYWRlIGluIHRoZSBzYW1lIHRyYW5zYWN0aW9uXG4gICAqIFVzZSAwIGFzIGEgZGVmYXVsdFxuICAgKlxuICAgKiBAcGFyYW0ge251bWJlcn0gaW5kZXhcbiAgICpcbiAgICogQHJldHVybnMge0FkZHJlc3NJbml0aWFsaXphdGlvbkJ1aWxkZXJ9IFRoaXMgdHJhbnNmZXIgYnVpbGRlci5cbiAgICovXG4gIGluZGV4KGluZGV4OiBudW1iZXIpOiB0aGlzIHtcbiAgICB0aGlzLnZhbGlkYXRlVmFsdWUobmV3IEJpZ051bWJlcihpbmRleCkpO1xuICAgIHRoaXMuX2luZGV4ID0gaW5kZXg7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHByb3h5IHR5cGUgdG8gYWRkLlxuICAgKlxuICAgKiBAcGFyYW0ge3Byb3h5VHlwZX0gcHJveHlUeXBlXG4gICAqIEByZXR1cm5zIHtBZGRyZXNzSW5pdGlhbGl6YXRpb25CdWlsZGVyfSBUaGlzIGJ1aWxkZXIuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly93aWtpLnBvbGthZG90Lm5ldHdvcmsvZG9jcy9sZWFybi1wcm94aWVzI3Byb3h5LXR5cGVzXG4gICAqL1xuICB0eXBlKHByb3h5VHlwZTogUHJveHlUeXBlKTogdGhpcyB7XG4gICAgdGhpcy5fcHJveHlUeXBlID0gcHJveHlUeXBlO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBudW1iZXIgb2YgYmxvY2tzIHRoYXQgYW4gYW5ub3VuY2VtZW50IG11c3QgYmUgaW4gcGxhY2UgZm9yLlxuICAgKiBiZWZvcmUgdGhlIGNvcnJlc3BvbmRpbmcgY2FsbCBtYXkgYmUgZGlzcGF0Y2hlZC5cbiAgICogSWYgemVybywgdGhlbiBubyBhbm5vdW5jZW1lbnQgaXMgbmVlZGVkLlxuICAgKiBUT0RPOiBtb3ZlIHRvIHRoZSB2YWxpZGl0eSB3aW5kb3cgbWV0aG9kIG9uY2UgaXQgaGFzIGJlZW4gc3RhbmRhcmRpemVkXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBkZWxheVxuICAgKiBAcmV0dXJucyB7QWRkcmVzc0luaXRpYWxpemF0aW9uQnVpbGRlcn0gVGhpcyB0cmFuc2ZlciBidWlsZGVyLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vd2lraS5wb2xrYWRvdC5uZXR3b3JrL2RvY3MvbGVhcm4tcHJveGllcyN0aW1lLWRlbGF5ZWQtcHJveGllc1xuICAgKi9cbiAgZGVsYXkoZGVsYXk6IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMudmFsaWRhdGVWYWx1ZShuZXcgQmlnTnVtYmVyKHBhcnNlSW50KGRlbGF5LCAxMCkpKTtcbiAgICB0aGlzLl9kZWxheSA9IGRlbGF5O1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlRGVjb2RlZFRyYW5zYWN0aW9uKGRlY29kZWRUeG46IERlY29kZWRTaWduaW5nUGF5bG9hZCB8IERlY29kZWRTaWduZWRUeCk6IHZvaWQge1xuICAgIGxldCB2YWxpZGF0aW9uUmVzdWx0O1xuICAgIGlmIChkZWNvZGVkVHhuLm1ldGhvZD8ubmFtZSA9PT0gTWV0aG9kTmFtZXMuQWRkUHJveHkpIHtcbiAgICAgIGNvbnN0IHR4TWV0aG9kID0gZGVjb2RlZFR4bi5tZXRob2QuYXJncyBhcyB1bmtub3duIGFzIEFkZFByb3h5QXJncztcbiAgICAgIHZhbGlkYXRpb25SZXN1bHQgPSB0aGlzLnZhbGlkYXRlQWRkUHJveHlGaWVsZHMoZ2V0RGVsZWdhdGVBZGRyZXNzKHR4TWV0aG9kKSwgdHhNZXRob2QucHJveHlUeXBlLCB0eE1ldGhvZC5kZWxheSk7XG4gICAgfSBlbHNlIGlmIChkZWNvZGVkVHhuLm1ldGhvZD8ubmFtZSA9PT0gTWV0aG9kTmFtZXMuQW5vbnltb3VzIHx8IGRlY29kZWRUeG4ubWV0aG9kPy5uYW1lID09PSBNZXRob2ROYW1lcy5QdXJlUHJveHkpIHtcbiAgICAgIGNvbnN0IHR4TWV0aG9kID0gZGVjb2RlZFR4bi5tZXRob2QuYXJncyBhcyB1bmtub3duIGFzIEFkZEFub255bW91c1Byb3h5QXJncztcbiAgICAgIHZhbGlkYXRpb25SZXN1bHQgPSB0aGlzLnZhbGlkYXRlQW5vbnltb3VzUHJveHlGaWVsZHMoXG4gICAgICAgIHBhcnNlSW50KHR4TWV0aG9kLmluZGV4LCAxMCksXG4gICAgICAgIHR4TWV0aG9kLnByb3h5VHlwZSxcbiAgICAgICAgdHhNZXRob2QuZGVsYXlcbiAgICAgICk7XG4gICAgfVxuICAgIGlmICh2YWxpZGF0aW9uUmVzdWx0LmVycm9yKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYFRyYW5zYWN0aW9uIHZhbGlkYXRpb24gZmFpbGVkOiAke3ZhbGlkYXRpb25SZXN1bHQuZXJyb3IubWVzc2FnZX1gKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGZyb21JbXBsZW1lbnRhdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IHR4ID0gc3VwZXIuZnJvbUltcGxlbWVudGF0aW9uKHJhd1RyYW5zYWN0aW9uKTtcbiAgICBpZiAodGhpcy5fbWV0aG9kPy5uYW1lID09PSBNZXRob2ROYW1lcy5BZGRQcm94eSkge1xuICAgICAgY29uc3QgdHhNZXRob2QgPSB0aGlzLl9tZXRob2QuYXJncyBhcyBBZGRQcm94eUFyZ3M7XG4gICAgICB0aGlzLm93bmVyKHsgYWRkcmVzczogZ2V0RGVsZWdhdGVBZGRyZXNzKHR4TWV0aG9kKSB9KTtcbiAgICAgIHRoaXMudHlwZSh0eE1ldGhvZC5wcm94eVR5cGUpO1xuICAgICAgdGhpcy5kZWxheShuZXcgQmlnTnVtYmVyKHR4TWV0aG9kLmRlbGF5KS50b1N0cmluZygpKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuX21ldGhvZD8ubmFtZSA9PT0gTWV0aG9kTmFtZXMuQW5vbnltb3VzIHx8IHRoaXMuX21ldGhvZD8ubmFtZSA9PT0gTWV0aG9kTmFtZXMuUHVyZVByb3h5KSB7XG4gICAgICBjb25zdCB0eE1ldGhvZCA9IHRoaXMuX21ldGhvZC5hcmdzIGFzIEFkZEFub255bW91c1Byb3h5QXJncztcbiAgICAgIHRoaXMuaW5kZXgobmV3IEJpZ051bWJlcih0eE1ldGhvZC5pbmRleCkudG9OdW1iZXIoKSk7XG4gICAgICB0aGlzLnR5cGUodHhNZXRob2QucHJveHlUeXBlKTtcbiAgICAgIHRoaXMuZGVsYXkobmV3IEJpZ051bWJlcih0eE1ldGhvZC5kZWxheSkudG9TdHJpbmcoKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihcbiAgICAgICAgYEludmFsaWQgVHJhbnNhY3Rpb24gVHlwZTogJHt0aGlzLl9tZXRob2Q/Lm5hbWV9LiBFeHBlY3RlZCAke01ldGhvZE5hbWVzLkFkZFByb3h5fSBvciAke01ldGhvZE5hbWVzLkFub255bW91c31gXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gdHg7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVUcmFuc2FjdGlvbihfOiBUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIHN1cGVyLnZhbGlkYXRlVHJhbnNhY3Rpb24oXyk7XG4gICAgdGhpcy52YWxpZGF0ZUZpZWxkcygpO1xuICB9XG5cbiAgcHJpdmF0ZSB2YWxpZGF0ZUZpZWxkcygpOiB2b2lkIHtcbiAgICBsZXQgdmFsaWRhdGlvblJlc3VsdDogVmFsaWRhdGlvblJlc3VsdDtcbiAgICBpZiAodGhpcy5fZGVsZWdhdGUpIHtcbiAgICAgIHZhbGlkYXRpb25SZXN1bHQgPSB0aGlzLnZhbGlkYXRlQWRkUHJveHlGaWVsZHModGhpcy5fZGVsZWdhdGUsIHRoaXMuX3Byb3h5VHlwZSwgdGhpcy5fZGVsYXkpO1xuICAgIH0gZWxzZSB7XG4gICAgICB2YWxpZGF0aW9uUmVzdWx0ID0gdGhpcy52YWxpZGF0ZUFub255bW91c1Byb3h5RmllbGRzKHRoaXMuX2luZGV4LCB0aGlzLl9wcm94eVR5cGUsIHRoaXMuX2RlbGF5KTtcbiAgICB9XG4gICAgaWYgKHZhbGlkYXRpb25SZXN1bHQuZXJyb3IpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihcbiAgICAgICAgYEFkZHJlc3NJbml0aWFsaXphdGlvbiBUcmFuc2FjdGlvbiB2YWxpZGF0aW9uIGZhaWxlZDogJHt2YWxpZGF0aW9uUmVzdWx0LmVycm9yLm1lc3NhZ2V9YFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHZhbGlkYXRlQWRkUHJveHlGaWVsZHMoZGVsZWdhdGU6IHN0cmluZywgcHJveHlUeXBlOiBzdHJpbmcsIGRlbGF5OiBzdHJpbmcpOiBWYWxpZGF0aW9uUmVzdWx0IHtcbiAgICByZXR1cm4gQWRkcmVzc0luaXRpYWxpemF0aW9uU2NoZW1hLnZhbGlkYXRlKHtcbiAgICAgIGRlbGVnYXRlLFxuICAgICAgcHJveHlUeXBlLFxuICAgICAgZGVsYXksXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHZhbGlkYXRlQW5vbnltb3VzUHJveHlGaWVsZHMoaW5kZXg6IG51bWJlciwgcHJveHlUeXBlOiBzdHJpbmcsIGRlbGF5OiBzdHJpbmcpOiBWYWxpZGF0aW9uUmVzdWx0IHtcbiAgICByZXR1cm4gQW5vbnltb3VzQWRkcmVzc0luaXRpYWxpemF0aW9uU2NoZW1hLnZhbGlkYXRlKHtcbiAgICAgIHByb3h5VHlwZSxcbiAgICAgIGluZGV4LFxuICAgICAgZGVsYXksXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,220 +0,0 @@
|
|
|
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.BatchTransactionBuilder = void 0;
|
|
7
|
-
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
8
|
-
const txwrapper_polkadot_1 = require("@substrate/txwrapper-polkadot");
|
|
9
|
-
const iface_1 = require("./iface");
|
|
10
|
-
const iface_utils_1 = require("./iface_utils");
|
|
11
|
-
const transactionBuilder_1 = require("./transactionBuilder");
|
|
12
|
-
const txnSchema_1 = require("./txnSchema");
|
|
13
|
-
const utils_1 = __importDefault(require("./utils"));
|
|
14
|
-
class BatchTransactionBuilder extends transactionBuilder_1.TransactionBuilder {
|
|
15
|
-
constructor(_coinConfig) {
|
|
16
|
-
super(_coinConfig);
|
|
17
|
-
this._atomic = false;
|
|
18
|
-
}
|
|
19
|
-
/** @inheritDoc */
|
|
20
|
-
buildTransaction() {
|
|
21
|
-
return this.buildBatchTransaction();
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* Build a transaction which batches together multiple transactions.
|
|
25
|
-
* The transactions which are batched together are passed in as an array of hex strings
|
|
26
|
-
* which are composed of the method to call and the arguments to pass into the method.
|
|
27
|
-
*
|
|
28
|
-
* @returns {UnsignedTransaction}
|
|
29
|
-
*
|
|
30
|
-
* @see https://polkadot.js.org/docs/substrate/extrinsics/#batchcalls-veccall
|
|
31
|
-
*/
|
|
32
|
-
buildBatchTransaction() {
|
|
33
|
-
const baseTxInfo = this.createBaseTxInfo();
|
|
34
|
-
if (this._atomic) {
|
|
35
|
-
return txwrapper_polkadot_1.methods.utility.batchAll({
|
|
36
|
-
calls: this._calls,
|
|
37
|
-
}, baseTxInfo.baseTxInfo, baseTxInfo.options);
|
|
38
|
-
}
|
|
39
|
-
else {
|
|
40
|
-
return txwrapper_polkadot_1.methods.utility.batch({
|
|
41
|
-
calls: this._calls,
|
|
42
|
-
}, baseTxInfo.baseTxInfo, baseTxInfo.options);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
get transactionType() {
|
|
46
|
-
return sdk_core_1.TransactionType.Batch;
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Set multiple unsigned transactions to be batched and broadcast as a single transaction
|
|
50
|
-
*
|
|
51
|
-
* @param {BatchCall[]} calls unsigned transactions
|
|
52
|
-
* @returns {BatchTransactionBuilder} This batch transaction builder.
|
|
53
|
-
*/
|
|
54
|
-
calls(calls) {
|
|
55
|
-
this.validateCalls(calls);
|
|
56
|
-
this._calls = calls;
|
|
57
|
-
return this;
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* If true when a batched call fails the entire transactions is rolled back, if false no roll back
|
|
61
|
-
* is performed and the effects of any successful call prior to the error remain.
|
|
62
|
-
*
|
|
63
|
-
* @param atomic true if calls must succeed atomically, false otherwise.
|
|
64
|
-
*/
|
|
65
|
-
atomic(atomic) {
|
|
66
|
-
this._atomic = atomic;
|
|
67
|
-
return this;
|
|
68
|
-
}
|
|
69
|
-
/** @inheritdoc */
|
|
70
|
-
validateDecodedTransaction(decodedTxn) {
|
|
71
|
-
const txMethod = decodedTxn.method.args;
|
|
72
|
-
const validationResult = this.validateBatchTransactionFields(txMethod.calls);
|
|
73
|
-
if (validationResult.error) {
|
|
74
|
-
throw new sdk_core_1.InvalidTransactionError(`Transaction validation failed: ${validationResult.error.message}`);
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
/** @inheritdoc */
|
|
78
|
-
fromImplementation(rawTransaction) {
|
|
79
|
-
var _a, _b, _c, _d;
|
|
80
|
-
const tx = super.fromImplementation(rawTransaction);
|
|
81
|
-
if (((_a = this._method) === null || _a === void 0 ? void 0 : _a.name) === iface_1.MethodNames.Batch || ((_b = this._method) === null || _b === void 0 ? void 0 : _b.name) === iface_1.MethodNames.BatchAll) {
|
|
82
|
-
if (((_c = this._method) === null || _c === void 0 ? void 0 : _c.name) === iface_1.MethodNames.BatchAll) {
|
|
83
|
-
this.atomic(true);
|
|
84
|
-
}
|
|
85
|
-
const txMethod = this._method.args;
|
|
86
|
-
if (!txMethod.calls) {
|
|
87
|
-
throw new sdk_core_1.InvalidTransactionError('failed to decode calls from batch transaction');
|
|
88
|
-
}
|
|
89
|
-
const callsToBatch = [];
|
|
90
|
-
txMethod.calls.forEach((call) => {
|
|
91
|
-
const method = call.callIndex;
|
|
92
|
-
const decodedMethod = sdk_core_1.toUint8Array(utils_1.default.stripHexPrefix(method));
|
|
93
|
-
const decodedCall = this._registry.findMetaCall(decodedMethod);
|
|
94
|
-
if (decodedCall.section === iface_1.SectionNames.Proxy &&
|
|
95
|
-
(decodedCall.method === iface_1.MethodNames.Anonymous || decodedCall.method === iface_1.MethodNames.PureProxy)) {
|
|
96
|
-
callsToBatch.push(this.getPureProxyCall(call.args));
|
|
97
|
-
}
|
|
98
|
-
else if (decodedCall.section === iface_1.SectionNames.Proxy && decodedCall.method === iface_1.MethodNames.AddProxy) {
|
|
99
|
-
callsToBatch.push(this.getAddProxyCall(call.args));
|
|
100
|
-
}
|
|
101
|
-
else if (decodedCall.section === iface_1.SectionNames.Staking && decodedCall.method === iface_1.MethodNames.Bond) {
|
|
102
|
-
callsToBatch.push(this.getBondCall(call.args));
|
|
103
|
-
}
|
|
104
|
-
else if (decodedCall.section === iface_1.SectionNames.Staking && decodedCall.method === iface_1.MethodNames.Unbond) {
|
|
105
|
-
callsToBatch.push(this.getUnbondCall(call.args));
|
|
106
|
-
}
|
|
107
|
-
else if (decodedCall.section === iface_1.SectionNames.Staking && decodedCall.method === iface_1.MethodNames.Chill) {
|
|
108
|
-
callsToBatch.push(this.getChillCall());
|
|
109
|
-
}
|
|
110
|
-
else if (decodedCall.section === iface_1.SectionNames.Proxy && decodedCall.method === iface_1.MethodNames.RemoveProxy) {
|
|
111
|
-
callsToBatch.push(this.getRemoveProxyCall(call.args));
|
|
112
|
-
}
|
|
113
|
-
else {
|
|
114
|
-
throw new sdk_core_1.NotImplementedError(`batching of transaction with index ${method} unsupported`);
|
|
115
|
-
}
|
|
116
|
-
});
|
|
117
|
-
this.calls(callsToBatch);
|
|
118
|
-
}
|
|
119
|
-
else {
|
|
120
|
-
throw new sdk_core_1.InvalidTransactionError(`Invalid Transaction Type: ${(_d = this._method) === null || _d === void 0 ? void 0 : _d.name}. Expected ${iface_1.MethodNames.Batch}`);
|
|
121
|
-
}
|
|
122
|
-
return tx;
|
|
123
|
-
}
|
|
124
|
-
/** @inheritdoc */
|
|
125
|
-
validateTransaction(_) {
|
|
126
|
-
super.validateTransaction(_);
|
|
127
|
-
this.validateFields();
|
|
128
|
-
}
|
|
129
|
-
/**
|
|
130
|
-
* Validate list of unsigned transactions added to batch
|
|
131
|
-
*
|
|
132
|
-
* @param {string[]} calls
|
|
133
|
-
*
|
|
134
|
-
*/
|
|
135
|
-
validateCalls(calls) {
|
|
136
|
-
calls.forEach((call) => {
|
|
137
|
-
if (call.slice(0, 2) !== '0x') {
|
|
138
|
-
// example: '0x160400000000000000'
|
|
139
|
-
throw new sdk_core_1.BuildTransactionError('call in string format must be hex format of a method and its arguments');
|
|
140
|
-
}
|
|
141
|
-
});
|
|
142
|
-
}
|
|
143
|
-
validateFields() {
|
|
144
|
-
const validationResult = this.validateBatchTransactionFields(this._calls);
|
|
145
|
-
if (validationResult.error) {
|
|
146
|
-
throw new sdk_core_1.InvalidTransactionError(`AddressInitialization Transaction validation failed: ${validationResult.error.message}`);
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
validateBatchTransactionFields(calls) {
|
|
150
|
-
return txnSchema_1.BatchTransactionSchema.validate({
|
|
151
|
-
calls,
|
|
152
|
-
});
|
|
153
|
-
}
|
|
154
|
-
getPureProxyCall(args) {
|
|
155
|
-
const baseTxInfo = this.createBaseTxInfo();
|
|
156
|
-
const unsigned = utils_1.default.pureProxy({
|
|
157
|
-
proxyType: args.proxy_type,
|
|
158
|
-
index: args.index,
|
|
159
|
-
delay: args.delay,
|
|
160
|
-
}, baseTxInfo.baseTxInfo, baseTxInfo.options);
|
|
161
|
-
return unsigned.method;
|
|
162
|
-
}
|
|
163
|
-
getBondCall(args) {
|
|
164
|
-
const baseTxInfo = this.createBaseTxInfo();
|
|
165
|
-
const unsigned = txwrapper_polkadot_1.methods.staking.bond({
|
|
166
|
-
value: args.value,
|
|
167
|
-
payee: this.getPayee(args.payee),
|
|
168
|
-
}, baseTxInfo.baseTxInfo, baseTxInfo.options);
|
|
169
|
-
return unsigned.method;
|
|
170
|
-
}
|
|
171
|
-
getUnbondCall(args) {
|
|
172
|
-
const baseTxInfo = this.createBaseTxInfo();
|
|
173
|
-
const unsigned = txwrapper_polkadot_1.methods.staking.unbond({
|
|
174
|
-
value: args.value,
|
|
175
|
-
}, baseTxInfo.baseTxInfo, baseTxInfo.options);
|
|
176
|
-
return unsigned.method;
|
|
177
|
-
}
|
|
178
|
-
getPayee(payee) {
|
|
179
|
-
if (iface_utils_1.isStakeBatchCallPayeeStash(payee)) {
|
|
180
|
-
return 'Stash';
|
|
181
|
-
}
|
|
182
|
-
else if (iface_utils_1.isStakeBatchCallPayeeController(payee)) {
|
|
183
|
-
return 'Controller';
|
|
184
|
-
}
|
|
185
|
-
else if (iface_utils_1.isStakeBatchCallPayeeAccount(payee)) {
|
|
186
|
-
return { Account: payee.account };
|
|
187
|
-
}
|
|
188
|
-
else if (iface_utils_1.isStakeBatchCallPayeeStaked(payee)) {
|
|
189
|
-
return 'Staked';
|
|
190
|
-
}
|
|
191
|
-
else {
|
|
192
|
-
throw new Error(`Invalid payee: ${payee}`);
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
getAddProxyCall(args) {
|
|
196
|
-
const baseTxInfo = this.createBaseTxInfo();
|
|
197
|
-
const unsigned = txwrapper_polkadot_1.methods.proxy.addProxy({
|
|
198
|
-
delegate: iface_utils_1.getDelegateAddress(args),
|
|
199
|
-
proxyType: args.proxy_type,
|
|
200
|
-
delay: args.delay,
|
|
201
|
-
}, baseTxInfo.baseTxInfo, baseTxInfo.options);
|
|
202
|
-
return unsigned.method;
|
|
203
|
-
}
|
|
204
|
-
getRemoveProxyCall(args) {
|
|
205
|
-
const baseTxInfo = this.createBaseTxInfo();
|
|
206
|
-
const unsigned = txwrapper_polkadot_1.methods.proxy.removeProxy({
|
|
207
|
-
delegate: iface_utils_1.getDelegateAddress(args),
|
|
208
|
-
proxyType: args.proxy_type,
|
|
209
|
-
delay: args.delay,
|
|
210
|
-
}, baseTxInfo.baseTxInfo, baseTxInfo.options);
|
|
211
|
-
return unsigned.method;
|
|
212
|
-
}
|
|
213
|
-
getChillCall() {
|
|
214
|
-
const baseTxInfo = this.createBaseTxInfo();
|
|
215
|
-
const unsigned = txwrapper_polkadot_1.methods.staking.chill({}, baseTxInfo.baseTxInfo, baseTxInfo.options);
|
|
216
|
-
return unsigned.method;
|
|
217
|
-
}
|
|
218
|
-
}
|
|
219
|
-
exports.BatchTransactionBuilder = BatchTransactionBuilder;
|
|
220
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmF0Y2hUcmFuc2FjdGlvbkJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2JhdGNoVHJhbnNhY3Rpb25CdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLG1EQU04QjtBQUc5QixzRUFBd0Q7QUFFeEQsbUNBV2lCO0FBQ2pCLCtDQU11QjtBQUV2Qiw2REFBMEQ7QUFDMUQsMkNBQXFEO0FBQ3JELG9EQUE0QjtBQUU1QixNQUFhLHVCQUF3QixTQUFRLHVDQUFrQjtJQUs3RCxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUhiLFlBQU8sR0FBRyxLQUFLLENBQUM7SUFJeEIsQ0FBQztJQUVELGtCQUFrQjtJQUNSLGdCQUFnQjtRQUN4QixPQUFPLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNPLHFCQUFxQjtRQUM3QixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUMzQyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEIsT0FBTyw0QkFBTyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQzdCO2dCQUNFLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTTthQUNuQixFQUNELFVBQVUsQ0FBQyxVQUFVLEVBQ3JCLFVBQVUsQ0FBQyxPQUFPLENBQ25CLENBQUM7U0FDSDthQUFNO1lBQ0wsT0FBTyw0QkFBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQzFCO2dCQUNFLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTTthQUNuQixFQUNELFVBQVUsQ0FBQyxVQUFVLEVBQ3JCLFVBQVUsQ0FBQyxPQUFPLENBQ25CLENBQUM7U0FDSDtJQUNILENBQUM7SUFFRCxJQUFjLGVBQWU7UUFDM0IsT0FBTywwQkFBZSxDQUFDLEtBQUssQ0FBQztJQUMvQixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFD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QUM7Q0FDRjtBQXRQRCwwREFzUEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCdWlsZFRyYW5zYWN0aW9uRXJyb3IsXG4gIEludmFsaWRUcmFuc2FjdGlvbkVycm9yLFxuICBOb3RJbXBsZW1lbnRlZEVycm9yLFxuICBUcmFuc2FjdGlvblR5cGUsXG4gIHRvVWludDhBcnJheSxcbn0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgRGVjb2RlZFNpZ25lZFR4LCBEZWNvZGVkU2lnbmluZ1BheWxvYWQsIFVuc2lnbmVkVHJhbnNhY3Rpb24gfSBmcm9tICdAc3Vic3RyYXRlL3R4d3JhcHBlci1jb3JlJztcbmltcG9ydCB7IG1ldGhvZHMgfSBmcm9tICdAc3Vic3RyYXRlL3R4d3JhcHBlci1wb2xrYWRvdCc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uUmVzdWx0IH0gZnJvbSAnam9pJztcbmltcG9ydCB7XG4gIEFkZEFub255bW91c1Byb3h5QmF0Y2hDYWxsQXJncyxcbiAgQWRkUHJveHlCYXRjaENhbGxBcmdzLFxuICBCYXRjaENhbGxPYmplY3QsXG4gIEJhdGNoQXJncyxcbiAgTWV0aG9kTmFtZXMsXG4gIFNlY3Rpb25OYW1lcyxcbiAgU3Rha2VBcmdzUGF5ZWUsXG4gIFN0YWtlQmF0Y2hDYWxsQXJncyxcbiAgU3Rha2VCYXRjaENhbGxQYXllZSxcbiAgU3Rha2VNb3JlQ2FsbEFyZ3MsXG59IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHtcbiAgZ2V0RGVsZWdhdGVBZGRyZXNzLFxuICBpc1N0YWtlQmF0Y2hDYWxsUGF5ZWVTdGFrZWQsXG4gIGlzU3Rha2VCYXRjaENhbGxQYXllZVN0YXNoLFxuICBpc1N0YWtlQmF0Y2hDYWxsUGF5ZWVDb250cm9sbGVyLFxuICBpc1N0YWtlQmF0Y2hDYWxsUGF5ZWVBY2NvdW50LFxufSBmcm9tICcuL2lmYWNlX3V0aWxzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyBCYXRjaFRyYW5zYWN0aW9uU2NoZW1hIH0gZnJvbSAnLi90eG5TY2hlbWEnO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY2xhc3MgQmF0Y2hUcmFuc2FjdGlvbkJ1aWxkZXIgZXh0ZW5kcyBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBwcm90ZWN0ZWQgX2NhbGxzOiBzdHJpbmdbXTtcbiAgcHJvdGVjdGVkIF90eXBlOiBUcmFuc2FjdGlvblR5cGU7XG4gIHByaXZhdGUgX2F0b21pYyA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdERvYyAqL1xuICBwcm90ZWN0ZWQgYnVpbGRUcmFuc2FjdGlvbigpOiBVbnNpZ25lZFRyYW5zYWN0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5idWlsZEJhdGNoVHJhbnNhY3Rpb24oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZCBhIHRyYW5zYWN0aW9uIHdoaWNoIGJhdGNoZXMgdG9nZXRoZXIgbXVsdGlwbGUgdHJhbnNhY3Rpb25zLlxuICAgKiBUaGUgdHJhbnNhY3Rpb25zIHdoaWNoIGFyZSBiYXRjaGVkIHRvZ2V0aGVyIGFyZSBwYXNzZWQgaW4gYXMgYW4gYXJyYXkgb2YgaGV4IHN0cmluZ3NcbiAgICogd2hpY2ggYXJlIGNvbXBvc2VkIG9mIHRoZSBtZXRob2QgdG8gY2FsbCBhbmQgdGhlIGFyZ3VtZW50cyB0byBwYXNzIGludG8gdGhlIG1ldGhvZC5cbiAgICpcbiAgICogQHJldHVybnMge1Vuc2lnbmVkVHJhbnNhY3Rpb259XG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9wb2xrYWRvdC5qcy5vcmcvZG9jcy9zdWJzdHJhdGUvZXh0cmluc2ljcy8jYmF0Y2hjYWxscy12ZWNjYWxsXG4gICAqL1xuICBwcm90ZWN0ZWQgYnVpbGRCYXRjaFRyYW5zYWN0aW9uKCk6IFVuc2lnbmVkVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IGJhc2VUeEluZm8gPSB0aGlzLmNyZWF0ZUJhc2VUeEluZm8oKTtcbiAgICBpZiAodGhpcy5fYXRvbWljKSB7XG4gICAgICByZXR1cm4gbWV0aG9kcy51dGlsaXR5LmJhdGNoQWxsKFxuICAgICAgICB7XG4gICAgICAgICAgY2FsbHM6IHRoaXMuX2NhbGxzLFxuICAgICAgICB9LFxuICAgICAgICBiYXNlVHhJbmZvLmJhc2VUeEluZm8sXG4gICAgICAgIGJhc2VUeEluZm8ub3B0aW9uc1xuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG1ldGhvZHMudXRpbGl0eS5iYXRjaChcbiAgICAgICAge1xuICAgICAgICAgIGNhbGxzOiB0aGlzLl9jYWxscyxcbiAgICAgICAgfSxcbiAgICAgICAgYmFzZVR4SW5mby5iYXNlVHhJbmZvLFxuICAgICAgICBiYXNlVHhJbmZvLm9wdGlvbnNcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLkJhdGNoO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCBtdWx0aXBsZSB1bnNpZ25lZCB0cmFuc2FjdGlvbnMgdG8gYmUgYmF0Y2hlZCBhbmQgYnJvYWRjYXN0IGFzIGEgc2luZ2xlIHRyYW5zYWN0aW9uXG4gICAqXG4gICAqIEBwYXJhbSB7QmF0Y2hDYWxsW119IGNhbGxzIHVuc2lnbmVkIHRyYW5zYWN0aW9uc1xuICAgKiBAcmV0dXJucyB7QmF0Y2hUcmFuc2FjdGlvbkJ1aWxkZXJ9IFRoaXMgYmF0Y2ggdHJhbnNhY3Rpb24gYnVpbGRlci5cbiAgICovXG4gIGNhbGxzKGNhbGxzOiBzdHJpbmdbXSk6IHRoaXMge1xuICAgIHRoaXMudmFsaWRhdGVDYWxscyhjYWxscyk7XG4gICAgdGhpcy5fY2FsbHMgPSBjYWxscztcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBJZiB0cnVlIHdoZW4gYSBiYXRjaGVkIGNhbGwgZmFpbHMgdGhlIGVudGlyZSB0cmFuc2FjdGlvbnMgaXMgcm9sbGVkIGJhY2ssIGlmIGZhbHNlIG5vIHJvbGwgYmFja1xuICAgKiBpcyBwZXJmb3JtZWQgYW5kIHRoZSBlZmZlY3RzIG9mIGFueSBzdWNjZXNzZnVsIGNhbGwgcHJpb3IgdG8gdGhlIGVycm9yIHJlbWFpbi5cbiAgICpcbiAgICogQHBhcmFtIGF0b21pYyB0cnVlIGlmIGNhbGxzIG11c3Qgc3VjY2VlZCBhdG9taWNhbGx5LCBmYWxzZSBvdGhlcndpc2UuXG4gICAqL1xuICBhdG9taWMoYXRvbWljOiBib29sZWFuKTogdGhpcyB7XG4gICAgdGhpcy5fYXRvbWljID0gYXRvbWljO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlRGVjb2RlZFRyYW5zYWN0aW9uKGRlY29kZWRUeG46IERlY29kZWRTaWduaW5nUGF5bG9hZCB8IERlY29kZWRTaWduZWRUeCk6IHZvaWQge1xuICAgIGNvbnN0IHR4TWV0aG9kID0gZGVjb2RlZFR4bi5tZXRob2QuYXJncyBhcyB1bmtub3duIGFzIEJhdGNoQXJncztcbiAgICBjb25zdCB2YWxpZGF0aW9uUmVzdWx0ID0gdGhpcy52YWxpZGF0ZUJhdGNoVHJhbnNhY3Rpb25GaWVsZHModHhNZXRob2QuY2FsbHMpO1xuICAgIGlmICh2YWxpZGF0aW9uUmVzdWx0LmVycm9yKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYFRyYW5zYWN0aW9uIHZhbGlkYXRpb24gZmFpbGVkOiAke3ZhbGlkYXRpb25SZXN1bHQuZXJyb3IubWVzc2FnZX1gKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGZyb21JbXBsZW1lbnRhdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IHR4ID0gc3VwZXIuZnJvbUltcGxlbWVudGF0aW9uKHJhd1RyYW5zYWN0aW9uKTtcbiAgICBpZiAodGhpcy5fbWV0aG9kPy5uYW1lID09PSBNZXRob2ROYW1lcy5CYXRjaCB8fCB0aGlzLl9tZXRob2Q/Lm5hbWUgPT09IE1ldGhvZE5hbWVzLkJhdGNoQWxsKSB7XG4gICAgICBpZiAodGhpcy5fbWV0aG9kPy5uYW1lID09PSBNZXRob2ROYW1lcy5CYXRjaEFsbCkge1xuICAgICAgICB0aGlzLmF0b21pYyh0cnVlKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHR4TWV0aG9kID0gdGhpcy5fbWV0aG9kLmFyZ3MgYXMgQmF0Y2hBcmdzO1xuICAgICAgaWYgKCF0eE1ldGhvZC5jYWxscykge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ2ZhaWxlZCB0byBkZWNvZGUgY2FsbHMgZnJvbSBiYXRjaCB0cmFuc2FjdGlvbicpO1xuICAgICAgfVxuICAgICAgY29uc3QgY2FsbHNUb0JhdGNoOiBzdHJpbmdbXSA9IFtdO1xuICAgICAgdHhNZXRob2QuY2FsbHMuZm9yRWFjaCgoY2FsbCkgPT4ge1xuICAgICAgICBjb25zdCBtZXRob2QgPSAoY2FsbCBhcyBCYXRjaENhbGxPYmplY3QpLmNhbGxJbmRleDtcbiAgICAgICAgY29uc3QgZGVjb2RlZE1ldGhvZCA9IHRvVWludDhBcnJheSh1dGlscy5zdHJpcEhleFByZWZpeChtZXRob2QpKTtcbiAgICAgICAgY29uc3QgZGVjb2RlZENhbGwgPSB0aGlzLl9yZWdpc3RyeS5maW5kTWV0YUNhbGwoZGVjb2RlZE1ldGhvZCk7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBkZWNvZGVkQ2FsbC5zZWN0aW9uID09PSBTZWN0aW9uTmFtZXMuUHJveHkgJiZcbiAgICAgICAgICAoZGVjb2RlZENhbGwubWV0aG9kID09PSBNZXRob2ROYW1lcy5Bbm9ueW1vdXMgfHwgZGVjb2RlZENhbGwubWV0aG9kID09PSBNZXRob2ROYW1lcy5QdXJlUHJveHkpXG4gICAgICAgICkge1xuICAgICAgICAgIGNhbGxzVG9CYXRjaC5wdXNoKHRoaXMuZ2V0UHVyZVByb3h5Q2FsbChjYWxsLmFyZ3MgYXMgQWRkQW5vbnltb3VzUHJveHlCYXRjaENhbGxBcmdzKSk7XG4gICAgICAgIH0gZWxzZSBpZiAoZGVjb2RlZENhbGwuc2VjdGlvbiA9PT0gU2VjdGlvbk5hbWVzLlByb3h5ICYmIGRlY29kZWRDYWxsLm1ldGhvZCA9PT0gTWV0aG9kTmFtZXMuQWRkUHJveHkpIHtcbiAgICAgICAgICBjYWxsc1RvQmF0Y2gucHVzaCh0aGlzLmdldEFkZFByb3h5Q2FsbChjYWxsLmFyZ3MgYXMgQWRkUHJveHlCYXRjaENhbGxBcmdzKSk7XG4gICAgICAgIH0gZWxzZSBpZiAoZGVjb2RlZENhbGwuc2VjdGlvbiA9PT0gU2VjdGlvbk5hbWVzLlN0YWtpbmcgJiYgZGVjb2RlZENhbGwubWV0aG9kID09PSBNZXRob2ROYW1lcy5Cb25kKSB7XG4gICAgICAgICAgY2FsbHNUb0JhdGNoLnB1c2godGhpcy5nZXRCb25kQ2FsbChjYWxsLmFyZ3MgYXMgU3Rha2VCYXRjaENhbGxBcmdzKSk7XG4gICAgICAgIH0gZWxzZSBpZiAoZGVjb2RlZENhbGwuc2VjdGlvbiA9PT0gU2VjdGlvbk5hbWVzLlN0YWtpbmcgJiYgZGVjb2RlZENhbGwubWV0aG9kID09PSBNZXRob2ROYW1lcy5VbmJvbmQpIHtcbiAgICAgICAgICBjYWxsc1RvQmF0Y2gucHVzaCh0aGlzLmdldFVuYm9uZENhbGwoY2FsbC5hcmdzIGFzIFN0YWtlTW9yZUNhbGxBcmdzKSk7XG4gICAgICAgIH0gZWxzZSBpZiAoZGVjb2RlZENhbGwuc2VjdGlvbiA9PT0gU2VjdGlvbk5hbWVzLlN0YWtpbmcgJiYgZGVjb2RlZENhbGwubWV0aG9kID09PSBNZXRob2ROYW1lcy5DaGlsbCkge1xuICAgICAgICAgIGNhbGxzVG9CYXRjaC5wdXNoKHRoaXMuZ2V0Q2hpbGxDYWxsKCkpO1xuICAgICAgICB9IGVsc2UgaWYgKGRlY29kZWRDYWxsLnNlY3Rpb24gPT09IFNlY3Rpb25OYW1lcy5Qcm94eSAmJiBkZWNvZGVkQ2FsbC5tZXRob2QgPT09IE1ldGhvZE5hbWVzLlJlbW92ZVByb3h5KSB7XG4gICAgICAgICAgY2FsbHNUb0JhdGNoLnB1c2godGhpcy5nZXRSZW1vdmVQcm94eUNhbGwoY2FsbC5hcmdzIGFzIEFkZFByb3h5QmF0Y2hDYWxsQXJncykpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRocm93IG5ldyBOb3RJbXBsZW1lbnRlZEVycm9yKGBiYXRjaGluZyBvZiB0cmFuc2FjdGlvbiB3aXRoIGluZGV4ICR7bWV0aG9kfSB1bnN1cHBvcnRlZGApO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIHRoaXMuY2FsbHMoY2FsbHNUb0JhdGNoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKFxuICAgICAgICBgSW52YWxpZCBUcmFuc2FjdGlvbiBUeXBlOiAke3RoaXMuX21ldGhvZD8ubmFtZX0uIEV4cGVjdGVkICR7TWV0aG9kTmFtZXMuQmF0Y2h9YFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHR4O1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlVHJhbnNhY3Rpb24oXzogVHJhbnNhY3Rpb24pOiB2b2lkIHtcbiAgICBzdXBlci52YWxpZGF0ZVRyYW5zYWN0aW9uKF8pO1xuICAgIHRoaXMudmFsaWRhdGVGaWVsZHMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZSBsaXN0IG9mIHVuc2lnbmVkIHRyYW5zYWN0aW9ucyBhZGRlZCB0byBiYXRjaFxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ1tdfSBjYWxsc1xuICAgKlxuICAgKi9cbiAgdmFsaWRhdGVDYWxscyhjYWxsczogc3RyaW5nW10pOiB2b2lkIHtcbiAgICBjYWxscy5mb3JFYWNoKChjYWxsKSA9PiB7XG4gICAgICBpZiAoY2FsbC5zbGljZSgwLCAyKSAhPT0gJzB4Jykge1xuICAgICAgICAvLyBleGFtcGxlOiAnMHgxNjA0MDAwMDAwMDAwMDAwMDAnXG4gICAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ2NhbGwgaW4gc3RyaW5nIGZvcm1hdCBtdXN0IGJlIGhleCBmb3JtYXQgb2YgYSBtZXRob2QgYW5kIGl0cyBhcmd1bWVudHMnKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgdmFsaWRhdGVGaWVsZHMoKTogdm9pZCB7XG4gICAgY29uc3QgdmFsaWRhdGlvblJlc3VsdCA9IHRoaXMudmFsaWRhdGVCYXRjaFRyYW5zYWN0aW9uRmllbGRzKHRoaXMuX2NhbGxzKTtcbiAgICBpZiAodmFsaWRhdGlvblJlc3VsdC5lcnJvcikge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKFxuICAgICAgICBgQWRkcmVzc0luaXRpYWxpemF0aW9uIFRyYW5zYWN0aW9uIHZhbGlkYXRpb24gZmFpbGVkOiAke3ZhbGlkYXRpb25SZXN1bHQuZXJyb3IubWVzc2FnZX1gXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgdmFsaWRhdGVCYXRjaFRyYW5zYWN0aW9uRmllbGRzKGNhbGxzOiAoc3RyaW5nIHwgQmF0Y2hDYWxsT2JqZWN0KVtdKTogVmFsaWRhdGlvblJlc3VsdCB7XG4gICAgcmV0dXJuIEJhdGNoVHJhbnNhY3Rpb25TY2hlbWEudmFsaWRhdGUoe1xuICAgICAgY2FsbHMsXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldFB1cmVQcm94eUNhbGwoYXJnczogQWRkQW5vbnltb3VzUHJveHlCYXRjaENhbGxBcmdzKTogc3RyaW5nIHtcbiAgICBjb25zdCBiYXNlVHhJbmZvID0gdGhpcy5jcmVhdGVCYXNlVHhJbmZvKCk7XG4gICAgY29uc3QgdW5zaWduZWQgPSB1dGlscy5wdXJlUHJveHkoXG4gICAgICB7XG4gICAgICAgIHByb3h5VHlwZTogYXJncy5wcm94eV90eXBlLFxuICAgICAgICBpbmRleDogYXJncy5pbmRleCxcbiAgICAgICAgZGVsYXk6IGFyZ3MuZGVsYXksXG4gICAgICB9LFxuICAgICAgYmFzZVR4SW5mby5iYXNlVHhJbmZvLFxuICAgICAgYmFzZVR4SW5mby5vcHRpb25zXG4gICAgKTtcbiAgICByZXR1cm4gdW5zaWduZWQubWV0aG9kO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRCb25kQ2FsbChhcmdzOiBTdGFrZUJhdGNoQ2FsbEFyZ3MpOiBzdHJpbmcge1xuICAgIGNvbnN0IGJhc2VUeEluZm8gPSB0aGlzLmNyZWF0ZUJhc2VUeEluZm8oKTtcbiAgICBjb25zdCB1bnNpZ25lZCA9IG1ldGhvZHMuc3Rha2luZy5ib25kKFxuICAgICAge1xuICAgICAgICB2YWx1ZTogYXJncy52YWx1ZSxcbiAgICAgICAgcGF5ZWU6IHRoaXMuZ2V0UGF5ZWUoYXJncy5wYXllZSksXG4gICAgICB9LFxuICAgICAgYmFzZVR4SW5mby5iYXNlVHhJbmZvLFxuICAgICAgYmFzZVR4SW5mby5vcHRpb25zXG4gICAgKTtcbiAgICByZXR1cm4gdW5zaWduZWQubWV0aG9kO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRVbmJvbmRDYWxsKGFyZ3M6IFN0YWtlTW9yZUNhbGxBcmdzKTogc3RyaW5nIHtcbiAgICBjb25zdCBiYXNlVHhJbmZvID0gdGhpcy5jcmVhdGVCYXNlVHhJbmZvKCk7XG4gICAgY29uc3QgdW5zaWduZWQgPSBtZXRob2RzLnN0YWtpbmcudW5ib25kKFxuICAgICAge1xuICAgICAgICB2YWx1ZTogYXJncy52YWx1ZSxcbiAgICAgIH0sXG4gICAgICBiYXNlVHhJbmZvLmJhc2VUeEluZm8sXG4gICAgICBiYXNlVHhJbmZvLm9wdGlvbnNcbiAgICApO1xuICAgIHJldHVybiB1bnNpZ25lZC5tZXRob2Q7XG4gIH1cblxuICBwcml2YXRlIGdldFBheWVlKHBheWVlOiBTdGFrZUJhdGNoQ2FsbFBheWVlKTogU3Rha2VBcmdzUGF5ZWUge1xuICAgIGlmIChpc1N0YWtlQmF0Y2hDYWxsUGF5ZWVTdGFzaChwYXllZSkpIHtcbiAgICAgIHJldHVybiAnU3Rhc2gnO1xuICAgIH0gZWxzZSBpZiAoaXNTdGFrZUJhdGNoQ2FsbFBheWVlQ29udHJvbGxlcihwYXllZSkpIHtcbiAgICAgIHJldHVybiAnQ29udHJvbGxlcic7XG4gICAgfSBlbHNlIGlmIChpc1N0YWtlQmF0Y2hDYWxsUGF5ZWVBY2NvdW50KHBheWVlKSkge1xuICAgICAgcmV0dXJuIHsgQWNjb3VudDogcGF5ZWUuYWNjb3VudCB9O1xuICAgIH0gZWxzZSBpZiAoaXNTdGFrZUJhdGNoQ2FsbFBheWVlU3Rha2VkKHBheWVlKSkge1xuICAgICAgcmV0dXJuICdTdGFrZWQnO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgcGF5ZWU6ICR7cGF5ZWV9YCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRBZGRQcm94eUNhbGwoYXJnczogQWRkUHJveHlCYXRjaENhbGxBcmdzKTogc3RyaW5nIHtcbiAgICBjb25zdCBiYXNlVHhJbmZvID0gdGhpcy5jcmVhdGVCYXNlVHhJbmZvKCk7XG4gICAgY29uc3QgdW5zaWduZWQgPSBtZXRob2RzLnByb3h5LmFkZFByb3h5KFxuICAgICAge1xuICAgICAgICBkZWxlZ2F0ZTogZ2V0RGVsZWdhdGVBZGRyZXNzKGFyZ3MpLFxuICAgICAgICBwcm94eVR5cGU6IGFyZ3MucHJveHlfdHlwZSxcbiAgICAgICAgZGVsYXk6IGFyZ3MuZGVsYXksXG4gICAgICB9LFxuICAgICAgYmFzZVR4SW5mby5iYXNlVHhJbmZvLFxuICAgICAgYmFzZVR4SW5mby5vcHRpb25zXG4gICAgKTtcbiAgICByZXR1cm4gdW5zaWduZWQubWV0aG9kO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRSZW1vdmVQcm94eUNhbGwoYXJnczogQWRkUHJveHlCYXRjaENhbGxBcmdzKTogc3RyaW5nIHtcbiAgICBjb25zdCBiYXNlVHhJbmZvID0gdGhpcy5jcmVhdGVCYXNlVHhJbmZvKCk7XG4gICAgY29uc3QgdW5zaWduZWQgPSBtZXRob2RzLnByb3h5LnJlbW92ZVByb3h5KFxuICAgICAge1xuICAgICAgICBkZWxlZ2F0ZTogZ2V0RGVsZWdhdGVBZGRyZXNzKGFyZ3MpLFxuICAgICAgICBwcm94eVR5cGU6IGFyZ3MucHJveHlfdHlwZSxcbiAgICAgICAgZGVsYXk6IGFyZ3MuZGVsYXksXG4gICAgICB9LFxuICAgICAgYmFzZVR4SW5mby5iYXNlVHhJbmZvLFxuICAgICAgYmFzZVR4SW5mby5vcHRpb25zXG4gICAgKTtcbiAgICByZXR1cm4gdW5zaWduZWQubWV0aG9kO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDaGlsbENhbGwoKTogc3RyaW5nIHtcbiAgICBjb25zdCBiYXNlVHhJbmZvID0gdGhpcy5jcmVhdGVCYXNlVHhJbmZvKCk7XG4gICAgY29uc3QgdW5zaWduZWQgPSBtZXRob2RzLnN0YWtpbmcuY2hpbGwoe30sIGJhc2VUeEluZm8uYmFzZVR4SW5mbywgYmFzZVR4SW5mby5vcHRpb25zKTtcbiAgICByZXR1cm4gdW5zaWduZWQubWV0aG9kO1xuICB9XG59XG4iXX0=
|
|
@@ -1,119 +0,0 @@
|
|
|
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.ClaimBuilder = void 0;
|
|
7
|
-
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
8
|
-
const txwrapper_polkadot_1 = require("@substrate/txwrapper-polkadot");
|
|
9
|
-
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
10
|
-
const iface_1 = require("./iface");
|
|
11
|
-
const transactionBuilder_1 = require("./transactionBuilder");
|
|
12
|
-
const txnSchema_1 = require("./txnSchema");
|
|
13
|
-
const utils_1 = __importDefault(require("./utils"));
|
|
14
|
-
class ClaimBuilder extends transactionBuilder_1.TransactionBuilder {
|
|
15
|
-
constructor(_coinConfig) {
|
|
16
|
-
super(_coinConfig);
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
*
|
|
20
|
-
* Pay out all the stakers behind a single validator for a single era.
|
|
21
|
-
* Any account can create this transaction.
|
|
22
|
-
*
|
|
23
|
-
* @returns {UnsignedTransaction} an unsigned Dot transaction
|
|
24
|
-
*
|
|
25
|
-
* @see https://polkadot.js.org/docs/substrate/extrinsics/#payoutstakersvalidator_stash-accountid32-era-u32
|
|
26
|
-
*/
|
|
27
|
-
buildTransaction() {
|
|
28
|
-
const baseTxInfo = this.createBaseTxInfo();
|
|
29
|
-
return txwrapper_polkadot_1.methods.staking.payoutStakers({
|
|
30
|
-
validatorStash: this._validatorStash,
|
|
31
|
-
era: this._claimEra,
|
|
32
|
-
}, baseTxInfo.baseTxInfo, baseTxInfo.options);
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Get the transaction type.
|
|
36
|
-
*/
|
|
37
|
-
get transactionType() {
|
|
38
|
-
return sdk_core_1.TransactionType.StakingClaim;
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
*
|
|
42
|
-
* The stash account of the validator.
|
|
43
|
-
*
|
|
44
|
-
* @param {string} validatorStash
|
|
45
|
-
* @returns {ClaimBuilder} This claim builder.
|
|
46
|
-
*
|
|
47
|
-
*/
|
|
48
|
-
validatorStash(validatorStash) {
|
|
49
|
-
this.validateAddress(validatorStash);
|
|
50
|
-
this._validatorStash = validatorStash.address;
|
|
51
|
-
return this;
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* The era to claim.
|
|
55
|
-
*
|
|
56
|
-
* @param {string} claimEra
|
|
57
|
-
* @returns {ClaimBuilder} This claim builder.
|
|
58
|
-
*
|
|
59
|
-
*/
|
|
60
|
-
claimEra(claimEra) {
|
|
61
|
-
this.validateValue(new bignumber_js_1.default(claimEra));
|
|
62
|
-
this._claimEra = claimEra;
|
|
63
|
-
return this;
|
|
64
|
-
}
|
|
65
|
-
/** @inheritdoc */
|
|
66
|
-
validateDecodedTransaction(decodedTxn) {
|
|
67
|
-
var _a;
|
|
68
|
-
if (((_a = decodedTxn.method) === null || _a === void 0 ? void 0 : _a.name) === iface_1.MethodNames.PayoutStakers) {
|
|
69
|
-
const txMethod = decodedTxn.method.args;
|
|
70
|
-
const claimEra = txMethod.era;
|
|
71
|
-
const validatorStash = txMethod.validatorStash;
|
|
72
|
-
const validationResult = txnSchema_1.ClaimTransactionSchema.validate({ claimEra, validatorStash });
|
|
73
|
-
if (validationResult.error) {
|
|
74
|
-
throw new sdk_core_1.InvalidTransactionError(`Claim Transaction validation failed: ${validationResult.error.message}`);
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
/** @inheritdoc */
|
|
79
|
-
fromImplementation(rawTransaction) {
|
|
80
|
-
var _a, _b;
|
|
81
|
-
const tx = super.fromImplementation(rawTransaction);
|
|
82
|
-
if (((_a = this._method) === null || _a === void 0 ? void 0 : _a.name) === iface_1.MethodNames.PayoutStakers) {
|
|
83
|
-
const txMethod = this._method.args;
|
|
84
|
-
this.validatorStash({
|
|
85
|
-
address: utils_1.default.decodeDotAddress(txMethod.validatorStash, utils_1.default.getAddressFormat(this._coinConfig.name)),
|
|
86
|
-
});
|
|
87
|
-
this.claimEra(txMethod.era);
|
|
88
|
-
}
|
|
89
|
-
else {
|
|
90
|
-
throw new sdk_core_1.InvalidTransactionError(`Invalid Transaction Type: ${(_b = this._method) === null || _b === void 0 ? void 0 : _b.name}. Expected payoutStakers`);
|
|
91
|
-
}
|
|
92
|
-
return tx;
|
|
93
|
-
}
|
|
94
|
-
/** @inheritdoc */
|
|
95
|
-
validateTransaction(_) {
|
|
96
|
-
super.validateTransaction(_);
|
|
97
|
-
this.validateFields(this._claimEra, this._validatorStash);
|
|
98
|
-
}
|
|
99
|
-
/**
|
|
100
|
-
*
|
|
101
|
-
* The stash account of the validator.
|
|
102
|
-
*
|
|
103
|
-
* @param {string} claimEra
|
|
104
|
-
* @param {string} validatorStash
|
|
105
|
-
* @throws {Error} If the expected fields are not valid.
|
|
106
|
-
*
|
|
107
|
-
*/
|
|
108
|
-
validateFields(claimEra, validatorStash) {
|
|
109
|
-
const validationResult = txnSchema_1.ClaimTransactionSchema.validate({
|
|
110
|
-
claimEra,
|
|
111
|
-
validatorStash,
|
|
112
|
-
});
|
|
113
|
-
if (validationResult.error) {
|
|
114
|
-
throw new sdk_core_1.InvalidTransactionError(`Claim Builder Transaction validation failed: ${validationResult.error.message}`);
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
exports.ClaimBuilder = ClaimBuilder;
|
|
119
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhaW1CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jbGFpbUJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsbURBQTRHO0FBRzVHLHNFQUF3RDtBQUN4RCxnRUFBcUM7QUFDckMsbUNBQWlEO0FBRWpELDZEQUEwRDtBQUMxRCwyQ0FBcUQ7QUFDckQsb0RBQTRCO0FBRTVCLE1BQWEsWUFBYSxTQUFRLHVDQUFrQjtJQUlsRCxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDTyxnQkFBZ0I7UUFDeEIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDM0MsT0FBTyw0QkFBTyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQ2xDO1lBQ0UsY0FBYyxFQUFFLElBQUksQ0FBQyxlQUFlO1lBQ3BDLEdBQUcsRUFBRSxJQUFJLENBQUMsU0FBUztTQUNwQixFQUNELFVBQVUsQ0FBQyxVQUFVLEVBQ3JCLFVBQVUsQ0FBQyxPQUFPLENBQ25CLENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFjLGVBQWU7UUFDM0IsT0FBTywwQkFBZSxDQUFDLFlBQVksQ0FBQztJQUN0QyxDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILGNBQWMsQ0FBQyxjQUEyQjtRQUN4QyxJQUFJLENBQUMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxlQUFlLEdBQUcsY0FBYyxDQUFDLE9BQU8sQ0FBQztRQUM5QyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxRQUFRLENBQUMsUUFBZ0I7UUFDdkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLHNCQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUM1QyxJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQztRQUMxQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsMEJBQTBCLENBQUMsVUFBbUQ7O1FBQzVFLElBQUksQ0FBQSxNQUFBLFVBQVUsQ0FBQyxNQUFNLDBDQUFFLElBQUksTUFBSyxtQkFBVyxDQUFDLGFBQWEsRUFBRTtZQUN6RCxNQUFNLFFBQVEsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQTRCLENBQUM7WUFDaEUsTUFBTSxRQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQztZQUM5QixNQUFNLGNBQWMsR0FBRyxRQUFRLENBQUMsY0FBYyxDQUFDO1lBQy9DLE1BQU0sZ0JBQWdCLEdBQUcsa0NBQXNCLENBQUMsUUFBUSxDQUFDLEVBQUUsUUFBUSxFQUFFLGNBQWMsRUFBRSxDQUFDLENBQUM7WUFDdkYsSUFBSSxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUU7Z0JBQzFCLE1BQU0sSUFBSSxrQ0FBdUIsQ0FBQyx3Q0FBd0MsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7YUFDN0c7U0FDRjtJQUNILENBQUM7SUFFRCxrQkFBa0I7SUFDUixrQkFBa0IsQ0FBQyxjQUFzQjs7UUFDakQsTUFBTSxFQUFFLEdBQUcsS0FBSyxDQUFDLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQSxNQUFBLElBQUksQ0FBQyxPQUFPLDBDQUFFLElBQUksTUFBSyxtQkFBVyxDQUFDLGFBQWEsRUFBRTtZQUNwRCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQWlCLENBQUM7WUFDaEQsSUFBSSxDQUFDLGNBQWMsQ0FBQztnQkFDbEIsT0FBTyxFQUFFLGVBQUssQ0FBQyxnQkFBZ0IsQ0FDN0IsUUFBUSxDQUFDLGNBQWMsRUFDdkIsZUFBSyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBcUIsQ0FBQyxDQUMvRDthQUNGLENBQUMsQ0FBQztZQUNILElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQzdCO2FBQU07WUFDTCxNQUFNLElBQUksa0NBQXVCLENBQUMsNkJBQTZCLE1BQUEsSUFBSSxDQUFDLE9BQU8sMENBQUUsSUFBSSwwQkFBMEIsQ0FBQyxDQUFDO1NBQzlHO1FBQ0QsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLG1CQUFtQixDQUFDLENBQWM7UUFDaEMsS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzdCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVEOzs7Ozs7OztPQVFHO0lBQ0ssY0FBYyxDQUFDLFFBQWdCLEVBQUUsY0FBc0I7UUFDN0QsTUFBTSxnQkFBZ0IsR0FBRyxrQ0FBc0IsQ0FBQyxRQUFRLENBQUM7WUFDdkQsUUFBUTtZQUNSLGNBQWM7U0FDZixDQUFDLENBQUM7UUFFSCxJQUFJLGdCQUFnQixDQUFDLEtBQUssRUFBRTtZQUMxQixNQUFNLElBQUksa0NBQXVCLENBQy9CLGdEQUFnRCxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQ2pGLENBQUM7U0FDSDtJQUNILENBQUM7Q0FDRjtBQXpIRCxvQ0F5SEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQWRkcmVzcywgRG90QXNzZXRUeXBlcywgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IsIFRyYW5zYWN0aW9uVHlwZSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IERlY29kZWRTaWduZWRUeCwgRGVjb2RlZFNpZ25pbmdQYXlsb2FkLCBVbnNpZ25lZFRyYW5zYWN0aW9uIH0gZnJvbSAnQHN1YnN0cmF0ZS90eHdyYXBwZXItY29yZSc7XG5pbXBvcnQgeyBtZXRob2RzIH0gZnJvbSAnQHN1YnN0cmF0ZS90eHdyYXBwZXItcG9sa2Fkb3QnO1xuaW1wb3J0IEJpZ051bWJlciBmcm9tICdiaWdudW1iZXIuanMnO1xuaW1wb3J0IHsgQ2xhaW1BcmdzLCBNZXRob2ROYW1lcyB9IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB7IENsYWltVHJhbnNhY3Rpb25TY2hlbWEgfSBmcm9tICcuL3R4blNjaGVtYSc7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjbGFzcyBDbGFpbUJ1aWxkZXIgZXh0ZW5kcyBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBwcm90ZWN0ZWQgX3ZhbGlkYXRvclN0YXNoOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfY2xhaW1FcmE6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogUGF5IG91dCBhbGwgdGhlIHN0YWtlcnMgYmVoaW5kIGEgc2luZ2xlIHZhbGlkYXRvciBmb3IgYSBzaW5nbGUgZXJhLlxuICAgKiBBbnkgYWNjb3VudCBjYW4gY3JlYXRlIHRoaXMgdHJhbnNhY3Rpb24uXG4gICAqXG4gICAqIEByZXR1cm5zIHtVbnNpZ25lZFRyYW5zYWN0aW9ufSBhbiB1bnNpZ25lZCBEb3QgdHJhbnNhY3Rpb25cbiAgICpcbiAgICogQHNlZSBodHRwczovL3BvbGthZG90LmpzLm9yZy9kb2NzL3N1YnN0cmF0ZS9leHRyaW5zaWNzLyNwYXlvdXRzdGFrZXJzdmFsaWRhdG9yX3N0YXNoLWFjY291bnRpZDMyLWVyYS11MzJcbiAgICovXG4gIHByb3RlY3RlZCBidWlsZFRyYW5zYWN0aW9uKCk6IFVuc2lnbmVkVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IGJhc2VUeEluZm8gPSB0aGlzLmNyZWF0ZUJhc2VUeEluZm8oKTtcbiAgICByZXR1cm4gbWV0aG9kcy5zdGFraW5nLnBheW91dFN0YWtlcnMoXG4gICAgICB7XG4gICAgICAgIHZhbGlkYXRvclN0YXNoOiB0aGlzLl92YWxpZGF0b3JTdGFzaCxcbiAgICAgICAgZXJhOiB0aGlzLl9jbGFpbUVyYSxcbiAgICAgIH0sXG4gICAgICBiYXNlVHhJbmZvLmJhc2VUeEluZm8sXG4gICAgICBiYXNlVHhJbmZvLm9wdGlvbnNcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgdHJhbnNhY3Rpb24gdHlwZS5cbiAgICovXG4gIHByb3RlY3RlZCBnZXQgdHJhbnNhY3Rpb25UeXBlKCk6IFRyYW5zYWN0aW9uVHlwZSB7XG4gICAgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nQ2xhaW07XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogVGhlIHN0YXNoIGFjY291bnQgb2YgdGhlIHZhbGlkYXRvci5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHZhbGlkYXRvclN0YXNoXG4gICAqIEByZXR1cm5zIHtDbGFpbUJ1aWxkZXJ9IFRoaXMgY2xhaW0gYnVpbGRlci5cbiAgICpcbiAgICovXG4gIHZhbGlkYXRvclN0YXNoKHZhbGlkYXRvclN0YXNoOiBCYXNlQWRkcmVzcyk6IHRoaXMge1xuICAgIHRoaXMudmFsaWRhdGVBZGRyZXNzKHZhbGlkYXRvclN0YXNoKTtcbiAgICB0aGlzLl92YWxpZGF0b3JTdGFzaCA9IHZhbGlkYXRvclN0YXNoLmFkZHJlc3M7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGVyYSB0byBjbGFpbS5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGNsYWltRXJhXG4gICAqIEByZXR1cm5zIHtDbGFpbUJ1aWxkZXJ9IFRoaXMgY2xhaW0gYnVpbGRlci5cbiAgICpcbiAgICovXG4gIGNsYWltRXJhKGNsYWltRXJhOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLnZhbGlkYXRlVmFsdWUobmV3IEJpZ051bWJlcihjbGFpbUVyYSkpO1xuICAgIHRoaXMuX2NsYWltRXJhID0gY2xhaW1FcmE7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVEZWNvZGVkVHJhbnNhY3Rpb24oZGVjb2RlZFR4bjogRGVjb2RlZFNpZ25pbmdQYXlsb2FkIHwgRGVjb2RlZFNpZ25lZFR4KTogdm9pZCB7XG4gICAgaWYgKGRlY29kZWRUeG4ubWV0aG9kPy5uYW1lID09PSBNZXRob2ROYW1lcy5QYXlvdXRTdGFrZXJzKSB7XG4gICAgICBjb25zdCB0eE1ldGhvZCA9IGRlY29kZWRUeG4ubWV0aG9kLmFyZ3MgYXMgdW5rbm93biBhcyBDbGFpbUFyZ3M7XG4gICAgICBjb25zdCBjbGFpbUVyYSA9IHR4TWV0aG9kLmVyYTtcbiAgICAgIGNvbnN0IHZhbGlkYXRvclN0YXNoID0gdHhNZXRob2QudmFsaWRhdG9yU3Rhc2g7XG4gICAgICBjb25zdCB2YWxpZGF0aW9uUmVzdWx0ID0gQ2xhaW1UcmFuc2FjdGlvblNjaGVtYS52YWxpZGF0ZSh7IGNsYWltRXJhLCB2YWxpZGF0b3JTdGFzaCB9KTtcbiAgICAgIGlmICh2YWxpZGF0aW9uUmVzdWx0LmVycm9yKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihgQ2xhaW0gVHJhbnNhY3Rpb24gdmFsaWRhdGlvbiBmYWlsZWQ6ICR7dmFsaWRhdGlvblJlc3VsdC5lcnJvci5tZXNzYWdlfWApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgZnJvbUltcGxlbWVudGF0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiBUcmFuc2FjdGlvbiB7XG4gICAgY29uc3QgdHggPSBzdXBlci5mcm9tSW1wbGVtZW50YXRpb24ocmF3VHJhbnNhY3Rpb24pO1xuICAgIGlmICh0aGlzLl9tZXRob2Q/Lm5hbWUgPT09IE1ldGhvZE5hbWVzLlBheW91dFN0YWtlcnMpIHtcbiAgICAgIGNvbnN0IHR4TWV0aG9kID0gdGhpcy5fbWV0aG9kLmFyZ3MgYXMgQ2xhaW1BcmdzO1xuICAgICAgdGhpcy52YWxpZGF0b3JTdGFzaCh7XG4gICAgICAgIGFkZHJlc3M6IHV0aWxzLmRlY29kZURvdEFkZHJlc3MoXG4gICAgICAgICAgdHhNZXRob2QudmFsaWRhdG9yU3Rhc2gsXG4gICAgICAgICAgdXRpbHMuZ2V0QWRkcmVzc0Zvcm1hdCh0aGlzLl9jb2luQ29uZmlnLm5hbWUgYXMgRG90QXNzZXRUeXBlcylcbiAgICAgICAgKSxcbiAgICAgIH0pO1xuICAgICAgdGhpcy5jbGFpbUVyYSh0eE1ldGhvZC5lcmEpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgVHJhbnNhY3Rpb24gVHlwZTogJHt0aGlzLl9tZXRob2Q/Lm5hbWV9LiBFeHBlY3RlZCBwYXlvdXRTdGFrZXJzYCk7XG4gICAgfVxuICAgIHJldHVybiB0eDtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVRyYW5zYWN0aW9uKF86IFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgc3VwZXIudmFsaWRhdGVUcmFuc2FjdGlvbihfKTtcbiAgICB0aGlzLnZhbGlkYXRlRmllbGRzKHRoaXMuX2NsYWltRXJhLCB0aGlzLl92YWxpZGF0b3JTdGFzaCk7XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogVGhlIHN0YXNoIGFjY291bnQgb2YgdGhlIHZhbGlkYXRvci5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGNsYWltRXJhXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB2YWxpZGF0b3JTdGFzaFxuICAgKiBAdGhyb3dzIHtFcnJvcn0gSWYgdGhlIGV4cGVjdGVkIGZpZWxkcyBhcmUgbm90IHZhbGlkLlxuICAgKlxuICAgKi9cbiAgcHJpdmF0ZSB2YWxpZGF0ZUZpZWxkcyhjbGFpbUVyYTogc3RyaW5nLCB2YWxpZGF0b3JTdGFzaDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgdmFsaWRhdGlvblJlc3VsdCA9IENsYWltVHJhbnNhY3Rpb25TY2hlbWEudmFsaWRhdGUoe1xuICAgICAgY2xhaW1FcmEsXG4gICAgICB2YWxpZGF0b3JTdGFzaCxcbiAgICB9KTtcblxuICAgIGlmICh2YWxpZGF0aW9uUmVzdWx0LmVycm9yKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoXG4gICAgICAgIGBDbGFpbSBCdWlsZGVyIFRyYW5zYWN0aW9uIHZhbGlkYXRpb24gZmFpbGVkOiAke3ZhbGlkYXRpb25SZXN1bHQuZXJyb3IubWVzc2FnZX1gXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuIl19
|
package/dist/src/lib/errors.js
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.InvalidFeeError = exports.AddressValidationError = void 0;
|
|
4
|
-
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
5
|
-
class AddressValidationError extends sdk_core_1.BuildTransactionError {
|
|
6
|
-
constructor(malformedAddress) {
|
|
7
|
-
super(`The address '${malformedAddress}' is not a well-formed dot address`);
|
|
8
|
-
this.name = AddressValidationError.name;
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
exports.AddressValidationError = AddressValidationError;
|
|
12
|
-
class InvalidFeeError extends sdk_core_1.BuildTransactionError {
|
|
13
|
-
constructor(type, expectedType) {
|
|
14
|
-
super(`The specified type: "${type}" is not valid. Please provide the type: "${expectedType}"`);
|
|
15
|
-
this.name = InvalidFeeError.name;
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
exports.InvalidFeeError = InvalidFeeError;
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9lcnJvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbURBQTZEO0FBRTdELE1BQWEsc0JBQXVCLFNBQVEsZ0NBQXFCO0lBQy9ELFlBQVksZ0JBQXdCO1FBQ2xDLEtBQUssQ0FBQyxnQkFBZ0IsZ0JBQWdCLG9DQUFvQyxDQUFDLENBQUM7UUFDNUUsSUFBSSxDQUFDLElBQUksR0FBRyxzQkFBc0IsQ0FBQyxJQUFJLENBQUM7SUFDMUMsQ0FBQztDQUNGO0FBTEQsd0RBS0M7QUFFRCxNQUFhLGVBQWdCLFNBQVEsZ0NBQXFCO0lBQ3hELFlBQVksSUFBYSxFQUFFLFlBQXFCO1FBQzlDLEtBQUssQ0FBQyx3QkFBd0IsSUFBSSw2Q0FBNkMsWUFBWSxHQUFHLENBQUMsQ0FBQztRQUNoRyxJQUFJLENBQUMsSUFBSSxHQUFHLGVBQWUsQ0FBQyxJQUFJLENBQUM7SUFDbkMsQ0FBQztDQUNGO0FBTEQsMENBS0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5cbmV4cG9ydCBjbGFzcyBBZGRyZXNzVmFsaWRhdGlvbkVycm9yIGV4dGVuZHMgQnVpbGRUcmFuc2FjdGlvbkVycm9yIHtcbiAgY29uc3RydWN0b3IobWFsZm9ybWVkQWRkcmVzczogc3RyaW5nKSB7XG4gICAgc3VwZXIoYFRoZSBhZGRyZXNzICcke21hbGZvcm1lZEFkZHJlc3N9JyBpcyBub3QgYSB3ZWxsLWZvcm1lZCBkb3QgYWRkcmVzc2ApO1xuICAgIHRoaXMubmFtZSA9IEFkZHJlc3NWYWxpZGF0aW9uRXJyb3IubmFtZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgSW52YWxpZEZlZUVycm9yIGV4dGVuZHMgQnVpbGRUcmFuc2FjdGlvbkVycm9yIHtcbiAgY29uc3RydWN0b3IodHlwZT86IHN0cmluZywgZXhwZWN0ZWRUeXBlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIoYFRoZSBzcGVjaWZpZWQgdHlwZTogXCIke3R5cGV9XCIgaXMgbm90IHZhbGlkLiBQbGVhc2UgcHJvdmlkZSB0aGUgdHlwZTogXCIke2V4cGVjdGVkVHlwZX1cImApO1xuICAgIHRoaXMubmFtZSA9IEludmFsaWRGZWVFcnJvci5uYW1lO1xuICB9XG59XG4iXX0=
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"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"}
|