@bitgo/sdk-coin-dot 4.11.7 → 4.12.0
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 +0 -7
- package/dist/cjs/src/dot.d.ts.map +1 -0
- package/dist/{src → cjs/src}/dot.js +1 -1
- package/dist/cjs/src/index.d.ts.map +1 -0
- package/dist/{src → cjs/src}/index.js +1 -1
- package/dist/cjs/src/lib/addressInitializationBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/addressInitializationBuilder.js +182 -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/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/{src → cjs/src}/lib/index.js +4 -2
- 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/cjs/src/lib/transaction.d.ts.map +1 -0
- package/dist/cjs/src/lib/transaction.js +624 -0
- 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/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.map +1 -0
- package/dist/{src → cjs/src}/resources/index.js +1 -1
- 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.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/{test/resources/testnet.js → cjs/src/resources/westend.js} +3 -3
- package/dist/cjs/src/resources/westendAssetHub.d.ts.map +1 -0
- package/dist/{src → cjs/src}/resources/westendAssetHub.js +1 -1
- 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.map +1 -0
- package/dist/cjs/test/fixtures.js +439 -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/testnet.d.ts.map +1 -0
- package/dist/{src/resources/westend.js → cjs/test/resources/testnet.js} +3 -3
- package/dist/{test → cjs/test}/unit/address.d.ts.map +1 -1
- package/dist/cjs/test/unit/address.js +45 -0
- package/dist/{test → cjs/test}/unit/dot.d.ts.map +1 -1
- package/dist/cjs/test/unit/dot.js +880 -0
- package/dist/{test → cjs/test}/unit/keypair.d.ts.map +1 -1
- package/dist/cjs/test/unit/keypair.js +111 -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.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/addressInitializationBuilder.js +265 -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.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/batchTransactionBuilder.js +521 -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.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/proxyBuilder.js +88 -0
- package/dist/cjs/test/unit/transactionBuilder/singeltonRegistry.d.ts.map +1 -0
- package/dist/{test → cjs/test}/unit/transactionBuilder/singeltonRegistry.js +1 -1
- 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.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/transactionBuilderFactory.js +107 -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.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/unnominateBuilder.js +97 -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.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/withdrawUnstakedBuilder.js +115 -0
- package/dist/{test → cjs/test}/unit/utils.d.ts.map +1 -1
- 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 +570 -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/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.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.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/{src → esm}/lib/transaction.d.ts.map +1 -1
- package/dist/esm/lib/transaction.js +584 -0
- package/dist/esm/lib/transactionBuilder.d.ts +131 -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.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/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.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.js +2 -0
- package/dist/esm/tdot.d.ts +12 -0
- package/dist/esm/tdot.js +23 -0
- package/package.json +29 -11
- package/dist/src/dot.d.ts.map +0 -1
- package/dist/src/lib/addressInitializationBuilder.js +0 -182
- package/dist/src/lib/batchTransactionBuilder.js +0 -229
- package/dist/src/lib/claimBuilder.js +0 -117
- package/dist/src/lib/errors.js +0 -19
- package/dist/src/lib/iface.js +0 -128
- package/dist/src/lib/iface_utils.js +0 -92
- package/dist/src/lib/keyPair.js +0 -117
- package/dist/src/lib/nativeTransferBuilder.js +0 -219
- package/dist/src/lib/proxyBuilder.js +0 -116
- package/dist/src/lib/singletonRegistry.js +0 -20
- package/dist/src/lib/stakingBuilder.js +0 -167
- package/dist/src/lib/transaction.js +0 -610
- package/dist/src/lib/transactionBuilder.js +0 -351
- package/dist/src/lib/transactionBuilderFactory.js +0 -104
- package/dist/src/lib/transferBuilder.js +0 -11
- package/dist/src/lib/txnSchema.js +0 -117
- package/dist/src/lib/unnominateBuilder.js +0 -48
- package/dist/src/lib/unstakeBuilder.js +0 -87
- package/dist/src/lib/utils.js +0 -491
- package/dist/src/lib/withdrawUnstakedBuilder.js +0 -88
- package/dist/src/register.js +0 -11
- package/dist/src/resources/mainnet.js +0 -5
- package/dist/src/resources/polkadotAssetHub.js +0 -5
- package/dist/src/tdot.js +0 -27
- package/dist/test/fixtures.d.ts.map +0 -1
- package/dist/test/fixtures.js +0 -439
- package/dist/test/resources/index.d.ts.map +0 -1
- package/dist/test/resources/index.js +0 -157
- package/dist/test/resources/testnet.d.ts.map +0 -1
- package/dist/test/unit/address.js +0 -45
- package/dist/test/unit/dot.js +0 -816
- package/dist/test/unit/keypair.js +0 -111
- package/dist/test/unit/transaction.d.ts.map +0 -1
- package/dist/test/unit/transaction.js +0 -269
- package/dist/test/unit/transactionBuilder/addressInitializationBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/addressInitializationBuilder.js +0 -265
- package/dist/test/unit/transactionBuilder/base.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/base.js +0 -233
- package/dist/test/unit/transactionBuilder/batchTransactionBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/batchTransactionBuilder.js +0 -521
- package/dist/test/unit/transactionBuilder/claimBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/claimBuilder.js +0 -129
- package/dist/test/unit/transactionBuilder/proxyBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/proxyBuilder.js +0 -88
- package/dist/test/unit/transactionBuilder/singeltonRegistry.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/stakingBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/stakingBuilder.js +0 -235
- package/dist/test/unit/transactionBuilder/transactionBuilderFactory.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/transactionBuilderFactory.js +0 -107
- package/dist/test/unit/transactionBuilder/transferBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/transferBuilder.js +0 -437
- package/dist/test/unit/transactionBuilder/unnominateBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/unnominateBuilder.js +0 -97
- package/dist/test/unit/transactionBuilder/unstakeBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/unstakeBuilder.js +0 -116
- package/dist/test/unit/transactionBuilder/withdrawUnstakedBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/withdrawUnstakedBuilder.js +0 -115
- package/dist/test/unit/utils.js +0 -117
- package/dist/tsconfig.tsbuildinfo +0 -1
- /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/batchTransactionBuilder.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.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/iface_utils.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/keyPair.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/transaction.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/transactionBuilder.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/utils.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/index.d.ts +0 -0
- /package/dist/{src → cjs/src}/resources/mainnet.d.ts +0 -0
- /package/dist/{src → cjs/src}/resources/polkadotAssetHub.d.ts +0 -0
- /package/dist/{src → cjs/src}/resources/westend.d.ts +0 -0
- /package/dist/{src → cjs/src}/resources/westendAssetHub.d.ts +0 -0
- /package/dist/{src → cjs/src}/tdot.d.ts +0 -0
- /package/dist/{test → cjs/test}/fixtures.d.ts +0 -0
- /package/dist/{test → cjs/test}/resources/index.d.ts +0 -0
- /package/dist/{test → cjs/test}/resources/materialData.json +0 -0
- /package/dist/{test → cjs/test}/resources/materialDataModified.json +0 -0
- /package/dist/{test → cjs/test}/resources/testnet.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/address.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/dot.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/keypair.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transaction.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/addressInitializationBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/base.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/batchTransactionBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/claimBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/proxyBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/singeltonRegistry.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/transactionBuilderFactory.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/transferBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/unnominateBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/unstakeBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/withdrawUnstakedBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/utils.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/batchTransactionBuilder.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.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/iface_utils.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/keyPair.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/transactionBuilder.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/utils.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/index.d.ts.map +0 -0
- /package/dist/{src → esm}/resources/mainnet.d.ts.map +0 -0
- /package/dist/{src → esm}/resources/polkadotAssetHub.d.ts.map +0 -0
- /package/dist/{src → esm}/resources/westend.d.ts.map +0 -0
- /package/dist/{src → esm}/resources/westendAssetHub.d.ts.map +0 -0
- /package/dist/{src → esm}/tdot.d.ts.map +0 -0
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { BaseAddress, BaseKey, BaseTransactionBuilder, FeeOptions, PublicKey as BasePublicKey, SequenceId, Signature, TransactionType, ValidityWindow } from '@bitgo/sdk-core';
|
|
2
|
+
import { BaseCoin as CoinConfig } from '@bitgo/statics';
|
|
3
|
+
import { UnsignedTransaction } from '@substrate/txwrapper-core';
|
|
4
|
+
import { DecodedSignedTx, DecodedSigningPayload, TypeRegistry } from '@substrate/txwrapper-core/lib/types';
|
|
5
|
+
import BigNumber from 'bignumber.js';
|
|
6
|
+
import { CreateBaseTxInfo, Material, TxMethod } from './iface';
|
|
7
|
+
import { KeyPair } from './keyPair';
|
|
8
|
+
import { Transaction } from './transaction';
|
|
9
|
+
export declare abstract class TransactionBuilder extends BaseTransactionBuilder {
|
|
10
|
+
protected _transaction: Transaction;
|
|
11
|
+
protected _keyPair: KeyPair;
|
|
12
|
+
protected _signature?: string;
|
|
13
|
+
protected _sender: string;
|
|
14
|
+
protected _blockNumber: number;
|
|
15
|
+
protected _referenceBlock: string;
|
|
16
|
+
protected _nonce: number;
|
|
17
|
+
protected _tip?: number;
|
|
18
|
+
protected _eraPeriod?: number;
|
|
19
|
+
protected _registry: TypeRegistry;
|
|
20
|
+
protected _method?: TxMethod;
|
|
21
|
+
protected __material?: Material;
|
|
22
|
+
protected _signatures: Signature[];
|
|
23
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
24
|
+
/**
|
|
25
|
+
* Sets the address of sending account.
|
|
26
|
+
*
|
|
27
|
+
* @param {BaseAddress} address The SS58-encoded address.
|
|
28
|
+
* @returns {TransactionBuilder} This transaction builder.
|
|
29
|
+
*
|
|
30
|
+
* @see https://wiki.polkadot.network/docs/build-transaction-construction
|
|
31
|
+
*/
|
|
32
|
+
sender({ address }: BaseAddress): this;
|
|
33
|
+
/**
|
|
34
|
+
* The nonce for this transaction.
|
|
35
|
+
*
|
|
36
|
+
* @param {number} nonce
|
|
37
|
+
* @returns {TransactionBuilder} This transaction builder.
|
|
38
|
+
*
|
|
39
|
+
* @see https://wiki.polkadot.network/docs/build-transaction-construction
|
|
40
|
+
*/
|
|
41
|
+
sequenceId(nonce: SequenceId): this;
|
|
42
|
+
/**
|
|
43
|
+
* The tip to increase transaction priority.
|
|
44
|
+
*
|
|
45
|
+
* @param {number | undefined} [fee.type] options for building fee tx
|
|
46
|
+
* @returns {TransactionBuilder} This transaction builder.
|
|
47
|
+
*
|
|
48
|
+
* @see https://wiki.polkadot.network/docs/build-transaction-construction
|
|
49
|
+
*/
|
|
50
|
+
fee(fee: FeeOptions): this;
|
|
51
|
+
/**
|
|
52
|
+
* The number of the checkpoint block after which the transaction is valid
|
|
53
|
+
*
|
|
54
|
+
* @param {ValidityWindow} firstValid block checkpoint where transaction is first valid
|
|
55
|
+
* @param {ValidityWindow} maxDuration number of blocks after checkpoint for which transaction is valid
|
|
56
|
+
* @returns {TransactionBuilder} This transaction builder.
|
|
57
|
+
*
|
|
58
|
+
* @see https://wiki.polkadot.network/docs/build-transaction-construction
|
|
59
|
+
*/
|
|
60
|
+
validity({ firstValid, maxDuration }: ValidityWindow): this;
|
|
61
|
+
/**
|
|
62
|
+
* The hash of the checkpoint block.
|
|
63
|
+
*
|
|
64
|
+
* @param {number} referenceBlock block hash checkpoint from where the transaction is valid
|
|
65
|
+
* @returns {TransactionBuilder} This transaction builder.
|
|
66
|
+
*
|
|
67
|
+
* @see https://wiki.polkadot.network/docs/build-transaction-construction
|
|
68
|
+
* @see https://wiki.polkadot.network/docs/build-protocol-info#transaction-mortality
|
|
69
|
+
*/
|
|
70
|
+
referenceBlock(referenceBlock: string): this;
|
|
71
|
+
/**
|
|
72
|
+
* The current version for transaction format.
|
|
73
|
+
*
|
|
74
|
+
* @param {number} transactionVersion
|
|
75
|
+
* @returns {TransactionBuilder} This transaction builder.
|
|
76
|
+
*
|
|
77
|
+
* @see https://wiki.polkadot.network/docs/build-transaction-construction
|
|
78
|
+
* @deprecated This field was added in material data.
|
|
79
|
+
*/
|
|
80
|
+
version(transactionVersion: number): this;
|
|
81
|
+
private method;
|
|
82
|
+
/**
|
|
83
|
+
* The material data for the block.
|
|
84
|
+
*
|
|
85
|
+
* @param {Material} material
|
|
86
|
+
* @returns {TransactionBuilder} This transaction builder.
|
|
87
|
+
*
|
|
88
|
+
* @see https://wiki.polkadot.network/docs/build-transaction-construction
|
|
89
|
+
*/
|
|
90
|
+
material(material: Material): this;
|
|
91
|
+
protected get _material(): Material;
|
|
92
|
+
/** @inheritdoc */
|
|
93
|
+
protected get transaction(): Transaction;
|
|
94
|
+
/** @inheritdoc */
|
|
95
|
+
protected set transaction(transaction: Transaction);
|
|
96
|
+
/** @inheritdoc */
|
|
97
|
+
protected fromImplementation(rawTransaction: string): Transaction;
|
|
98
|
+
getMethodAndArguments(): string;
|
|
99
|
+
/** @inheritdoc */
|
|
100
|
+
protected buildImplementation(): Promise<Transaction>;
|
|
101
|
+
protected createBaseTxInfo(): CreateBaseTxInfo;
|
|
102
|
+
/**
|
|
103
|
+
* Builds the specific transaction builder internally
|
|
104
|
+
* using the @substrate/txwrapper builder.
|
|
105
|
+
*/
|
|
106
|
+
protected abstract buildTransaction(): UnsignedTransaction;
|
|
107
|
+
/**
|
|
108
|
+
* The transaction type.
|
|
109
|
+
*/
|
|
110
|
+
protected abstract get transactionType(): TransactionType;
|
|
111
|
+
/** @inheritdoc */
|
|
112
|
+
validateAddress(address: BaseAddress, addressFormat?: string): void;
|
|
113
|
+
/** @inheritdoc */
|
|
114
|
+
validateKey({ key }: BaseKey): void;
|
|
115
|
+
/**
|
|
116
|
+
* Validates the specific transaction builder internally
|
|
117
|
+
*/
|
|
118
|
+
protected abstract validateDecodedTransaction(decodedTxn: DecodedSigningPayload | DecodedSignedTx, rawTransaction?: string): void;
|
|
119
|
+
/** @inheritdoc */
|
|
120
|
+
validateRawTransaction(rawTransaction: string): void;
|
|
121
|
+
/** @inheritdoc */
|
|
122
|
+
validateTransaction(_: Transaction): void;
|
|
123
|
+
private validateBaseFields;
|
|
124
|
+
/** @inheritdoc */
|
|
125
|
+
validateValue(value: BigNumber): void;
|
|
126
|
+
/** @inheritdoc */
|
|
127
|
+
addSignature(publicKey: BasePublicKey, signature: Buffer): void;
|
|
128
|
+
/** @inheritdoc */
|
|
129
|
+
protected signImplementation({ key }: BaseKey): Transaction;
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=transactionBuilder.d.ts.map
|
|
@@ -0,0 +1,311 @@
|
|
|
1
|
+
import { BaseTransactionBuilder, BuildTransactionError, InvalidTransactionError, isValidEd25519Seed, } from '@bitgo/sdk-core';
|
|
2
|
+
import { decode } from '@substrate/txwrapper-polkadot';
|
|
3
|
+
import BigNumber from 'bignumber.js';
|
|
4
|
+
import * as _ from 'lodash';
|
|
5
|
+
import { AddressValidationError, InvalidFeeError } from './errors';
|
|
6
|
+
import { KeyPair } from './keyPair';
|
|
7
|
+
import { SingletonRegistry } from './singletonRegistry';
|
|
8
|
+
import { Transaction } from './transaction';
|
|
9
|
+
import { BaseTransactionSchema, SignedTransactionSchema, SigningPayloadTransactionSchema } from './txnSchema';
|
|
10
|
+
import utils from './utils';
|
|
11
|
+
export class TransactionBuilder extends BaseTransactionBuilder {
|
|
12
|
+
constructor(_coinConfig) {
|
|
13
|
+
super(_coinConfig);
|
|
14
|
+
// signatures that will be used to sign a transaction when building
|
|
15
|
+
// not the same as the _signatures in transaction which is the signature in
|
|
16
|
+
// string hex format used for validation after we call .build()
|
|
17
|
+
this._signatures = []; // only support single sig for now
|
|
18
|
+
this._transaction = new Transaction(_coinConfig);
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Sets the address of sending account.
|
|
22
|
+
*
|
|
23
|
+
* @param {BaseAddress} address The SS58-encoded address.
|
|
24
|
+
* @returns {TransactionBuilder} This transaction builder.
|
|
25
|
+
*
|
|
26
|
+
* @see https://wiki.polkadot.network/docs/build-transaction-construction
|
|
27
|
+
*/
|
|
28
|
+
sender({ address }) {
|
|
29
|
+
this.validateAddress({ address });
|
|
30
|
+
this._sender = address;
|
|
31
|
+
this._transaction.sender(address);
|
|
32
|
+
return this;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* The nonce for this transaction.
|
|
36
|
+
*
|
|
37
|
+
* @param {number} nonce
|
|
38
|
+
* @returns {TransactionBuilder} This transaction builder.
|
|
39
|
+
*
|
|
40
|
+
* @see https://wiki.polkadot.network/docs/build-transaction-construction
|
|
41
|
+
*/
|
|
42
|
+
sequenceId(nonce) {
|
|
43
|
+
const value = new BigNumber(nonce.value);
|
|
44
|
+
this.validateValue(value);
|
|
45
|
+
this._nonce = value.toNumber();
|
|
46
|
+
return this;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* The tip to increase transaction priority.
|
|
50
|
+
*
|
|
51
|
+
* @param {number | undefined} [fee.type] options for building fee tx
|
|
52
|
+
* @returns {TransactionBuilder} This transaction builder.
|
|
53
|
+
*
|
|
54
|
+
* @see https://wiki.polkadot.network/docs/build-transaction-construction
|
|
55
|
+
*/
|
|
56
|
+
fee(fee) {
|
|
57
|
+
if (fee.type !== 'tip') {
|
|
58
|
+
throw new InvalidFeeError(fee.type, 'tip');
|
|
59
|
+
}
|
|
60
|
+
const tipBN = new BigNumber(fee.amount);
|
|
61
|
+
this.validateValue(tipBN);
|
|
62
|
+
this._tip = tipBN.toNumber();
|
|
63
|
+
return this;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* The number of the checkpoint block after which the transaction is valid
|
|
67
|
+
*
|
|
68
|
+
* @param {ValidityWindow} firstValid block checkpoint where transaction is first valid
|
|
69
|
+
* @param {ValidityWindow} maxDuration number of blocks after checkpoint for which transaction is valid
|
|
70
|
+
* @returns {TransactionBuilder} This transaction builder.
|
|
71
|
+
*
|
|
72
|
+
* @see https://wiki.polkadot.network/docs/build-transaction-construction
|
|
73
|
+
*/
|
|
74
|
+
validity({ firstValid, maxDuration }) {
|
|
75
|
+
if (!_.isUndefined(firstValid)) {
|
|
76
|
+
this.validateValue(new BigNumber(firstValid));
|
|
77
|
+
this._blockNumber = firstValid;
|
|
78
|
+
}
|
|
79
|
+
if (!_.isUndefined(maxDuration)) {
|
|
80
|
+
this.validateValue(new BigNumber(maxDuration));
|
|
81
|
+
this._eraPeriod = maxDuration;
|
|
82
|
+
}
|
|
83
|
+
return this;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* The hash of the checkpoint block.
|
|
87
|
+
*
|
|
88
|
+
* @param {number} referenceBlock block hash checkpoint from where the transaction is valid
|
|
89
|
+
* @returns {TransactionBuilder} This transaction builder.
|
|
90
|
+
*
|
|
91
|
+
* @see https://wiki.polkadot.network/docs/build-transaction-construction
|
|
92
|
+
* @see https://wiki.polkadot.network/docs/build-protocol-info#transaction-mortality
|
|
93
|
+
*/
|
|
94
|
+
referenceBlock(referenceBlock) {
|
|
95
|
+
this._referenceBlock = referenceBlock;
|
|
96
|
+
return this;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* The current version for transaction format.
|
|
100
|
+
*
|
|
101
|
+
* @param {number} transactionVersion
|
|
102
|
+
* @returns {TransactionBuilder} This transaction builder.
|
|
103
|
+
*
|
|
104
|
+
* @see https://wiki.polkadot.network/docs/build-transaction-construction
|
|
105
|
+
* @deprecated This field was added in material data.
|
|
106
|
+
*/
|
|
107
|
+
version(transactionVersion) {
|
|
108
|
+
// this._transactionVersion = transactionVersion;
|
|
109
|
+
return this;
|
|
110
|
+
}
|
|
111
|
+
method(method) {
|
|
112
|
+
this._method = method;
|
|
113
|
+
return this;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* The material data for the block.
|
|
117
|
+
*
|
|
118
|
+
* @param {Material} material
|
|
119
|
+
* @returns {TransactionBuilder} This transaction builder.
|
|
120
|
+
*
|
|
121
|
+
* @see https://wiki.polkadot.network/docs/build-transaction-construction
|
|
122
|
+
*/
|
|
123
|
+
material(material) {
|
|
124
|
+
this.__material = material;
|
|
125
|
+
this._registry = SingletonRegistry.getInstance(material);
|
|
126
|
+
return this;
|
|
127
|
+
}
|
|
128
|
+
get _material() {
|
|
129
|
+
if (!this.__material) {
|
|
130
|
+
const m = utils.getMaterial(this._coinConfig);
|
|
131
|
+
this.material(m);
|
|
132
|
+
return m;
|
|
133
|
+
}
|
|
134
|
+
return this.__material;
|
|
135
|
+
}
|
|
136
|
+
/** @inheritdoc */
|
|
137
|
+
get transaction() {
|
|
138
|
+
return this._transaction;
|
|
139
|
+
}
|
|
140
|
+
/** @inheritdoc */
|
|
141
|
+
set transaction(transaction) {
|
|
142
|
+
this._transaction = transaction;
|
|
143
|
+
}
|
|
144
|
+
/** @inheritdoc */
|
|
145
|
+
fromImplementation(rawTransaction) {
|
|
146
|
+
const decodedTxn = decode(rawTransaction, {
|
|
147
|
+
metadataRpc: this._material.metadata,
|
|
148
|
+
registry: this._registry,
|
|
149
|
+
});
|
|
150
|
+
if (utils.isSigningPayload(decodedTxn)) {
|
|
151
|
+
this.referenceBlock(decodedTxn.blockHash);
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
const keypair = utils.decodeDotAddressToKeyPair(decodedTxn.address);
|
|
155
|
+
this.sender({ address: keypair.getAddress(utils.getAddressFormat(this._coinConfig.name)) });
|
|
156
|
+
const edSignature = utils.recoverSignatureFromRawTx(rawTransaction, { registry: this._registry });
|
|
157
|
+
this.addSignature(keypair.getKeys(), Buffer.from(edSignature, 'hex'));
|
|
158
|
+
}
|
|
159
|
+
this.validity({ maxDuration: decodedTxn.eraPeriod });
|
|
160
|
+
this.sequenceId({
|
|
161
|
+
name: 'Nonce',
|
|
162
|
+
keyword: 'nonce',
|
|
163
|
+
value: decodedTxn.nonce,
|
|
164
|
+
});
|
|
165
|
+
if (decodedTxn.tip) {
|
|
166
|
+
this.fee({ amount: `${decodedTxn.tip}`, type: 'tip' });
|
|
167
|
+
}
|
|
168
|
+
this.method(decodedTxn.method);
|
|
169
|
+
return this._transaction;
|
|
170
|
+
}
|
|
171
|
+
getMethodAndArguments() {
|
|
172
|
+
this.validateTransaction(this.transaction);
|
|
173
|
+
const unsignedTransaction = this.buildTransaction();
|
|
174
|
+
return unsignedTransaction.method;
|
|
175
|
+
}
|
|
176
|
+
/** @inheritdoc */
|
|
177
|
+
async buildImplementation() {
|
|
178
|
+
this.transaction.setTransaction(this.buildTransaction());
|
|
179
|
+
this.transaction.transactionType(this.transactionType);
|
|
180
|
+
this.transaction.registry(this._registry);
|
|
181
|
+
this.transaction.chainName(this._material.chainName);
|
|
182
|
+
if (this._keyPair) {
|
|
183
|
+
this.transaction.sign(this._keyPair);
|
|
184
|
+
}
|
|
185
|
+
if (this._signatures?.length > 0) {
|
|
186
|
+
// if we have a signature, apply that and update this._signedTransaction
|
|
187
|
+
this.transaction.constructSignedPayload(this._signatures[0].signature);
|
|
188
|
+
}
|
|
189
|
+
this._transaction.loadInputsAndOutputs();
|
|
190
|
+
return this._transaction;
|
|
191
|
+
}
|
|
192
|
+
createBaseTxInfo() {
|
|
193
|
+
return {
|
|
194
|
+
baseTxInfo: {
|
|
195
|
+
address: this._sender,
|
|
196
|
+
blockHash: this._referenceBlock,
|
|
197
|
+
blockNumber: this._registry.createType('BlockNumber', this._blockNumber).toNumber(),
|
|
198
|
+
eraPeriod: this._eraPeriod,
|
|
199
|
+
genesisHash: this._material.genesisHash,
|
|
200
|
+
metadataRpc: this._material.metadata,
|
|
201
|
+
specVersion: this._material.specVersion,
|
|
202
|
+
transactionVersion: this._material.txVersion,
|
|
203
|
+
nonce: this._nonce,
|
|
204
|
+
tip: this._tip,
|
|
205
|
+
mode: 0,
|
|
206
|
+
},
|
|
207
|
+
options: {
|
|
208
|
+
metadataRpc: this._material.metadata,
|
|
209
|
+
registry: this._registry,
|
|
210
|
+
isImmortalEra: this._eraPeriod === 0,
|
|
211
|
+
},
|
|
212
|
+
};
|
|
213
|
+
}
|
|
214
|
+
// region Validators
|
|
215
|
+
/** @inheritdoc */
|
|
216
|
+
validateAddress(address, addressFormat) {
|
|
217
|
+
if (!utils.isValidAddress(address.address)) {
|
|
218
|
+
throw new AddressValidationError(address.address);
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
/** @inheritdoc */
|
|
222
|
+
validateKey({ key }) {
|
|
223
|
+
let isValidPrivateKeyFromBytes;
|
|
224
|
+
const isValidPrivateKeyFromHex = isValidEd25519Seed(key);
|
|
225
|
+
const isValidPrivateKeyFromBase64 = isValidEd25519Seed(Buffer.from(key, 'base64').toString('hex'));
|
|
226
|
+
try {
|
|
227
|
+
const decodedSeed = utils.decodeSeed(key);
|
|
228
|
+
isValidPrivateKeyFromBytes = isValidEd25519Seed(Buffer.from(decodedSeed.seed).toString('hex'));
|
|
229
|
+
}
|
|
230
|
+
catch (err) {
|
|
231
|
+
isValidPrivateKeyFromBytes = false;
|
|
232
|
+
}
|
|
233
|
+
if (!isValidPrivateKeyFromBytes && !isValidPrivateKeyFromHex && !isValidPrivateKeyFromBase64) {
|
|
234
|
+
throw new BuildTransactionError(`Key validation failed`);
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
/** @inheritdoc */
|
|
238
|
+
validateRawTransaction(rawTransaction) {
|
|
239
|
+
const decodedTxn = decode(rawTransaction, {
|
|
240
|
+
metadataRpc: this._material.metadata,
|
|
241
|
+
registry: this._registry,
|
|
242
|
+
});
|
|
243
|
+
const eraPeriod = decodedTxn.eraPeriod;
|
|
244
|
+
const nonce = decodedTxn.nonce;
|
|
245
|
+
const tip = decodedTxn.tip;
|
|
246
|
+
if (utils.isSigningPayload(decodedTxn)) {
|
|
247
|
+
const blockHash = decodedTxn.blockHash;
|
|
248
|
+
const validationResult = SigningPayloadTransactionSchema.validate({
|
|
249
|
+
eraPeriod,
|
|
250
|
+
blockHash,
|
|
251
|
+
nonce,
|
|
252
|
+
tip,
|
|
253
|
+
});
|
|
254
|
+
if (validationResult.error) {
|
|
255
|
+
throw new InvalidTransactionError(`Transaction validation failed: ${validationResult.error.message}`);
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
else {
|
|
259
|
+
const sender = decodedTxn.address;
|
|
260
|
+
const validationResult = SignedTransactionSchema.validate({
|
|
261
|
+
sender,
|
|
262
|
+
nonce,
|
|
263
|
+
eraPeriod,
|
|
264
|
+
tip,
|
|
265
|
+
});
|
|
266
|
+
if (validationResult.error) {
|
|
267
|
+
throw new InvalidTransactionError(`Transaction validation failed: ${validationResult.error.message}`);
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
this.validateDecodedTransaction(decodedTxn, rawTransaction);
|
|
271
|
+
}
|
|
272
|
+
/** @inheritdoc */
|
|
273
|
+
validateTransaction(_) {
|
|
274
|
+
this.validateBaseFields(this._sender, this._blockNumber, this._referenceBlock, this._material.genesisHash, this._material.chainName, this._nonce, this._material.specVersion, this._material.specName, this._material.txVersion, this._eraPeriod, this._tip);
|
|
275
|
+
}
|
|
276
|
+
validateBaseFields(sender, blockNumber, blockHash, genesisHash, chainName, nonce, specVersion, specName, transactionVersion, eraPeriod, tip) {
|
|
277
|
+
const validationResult = BaseTransactionSchema.validate({
|
|
278
|
+
sender,
|
|
279
|
+
blockNumber,
|
|
280
|
+
blockHash,
|
|
281
|
+
genesisHash,
|
|
282
|
+
chainName,
|
|
283
|
+
nonce,
|
|
284
|
+
specVersion,
|
|
285
|
+
specName,
|
|
286
|
+
transactionVersion,
|
|
287
|
+
eraPeriod,
|
|
288
|
+
tip,
|
|
289
|
+
});
|
|
290
|
+
if (validationResult.error) {
|
|
291
|
+
throw new InvalidTransactionError(`Transaction validation failed: ${validationResult.error.message}`);
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
/** @inheritdoc */
|
|
295
|
+
validateValue(value) {
|
|
296
|
+
if (value.isLessThan(0)) {
|
|
297
|
+
throw new BuildTransactionError('Value cannot be less than zero');
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
// endregion
|
|
301
|
+
/** @inheritdoc */
|
|
302
|
+
addSignature(publicKey, signature) {
|
|
303
|
+
this._signatures.push({ publicKey, signature });
|
|
304
|
+
}
|
|
305
|
+
/** @inheritdoc */
|
|
306
|
+
signImplementation({ key }) {
|
|
307
|
+
this._keyPair = new KeyPair({ prv: key });
|
|
308
|
+
return this._transaction;
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2FjdGlvbkJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLHNCQUFzQixFQUN0QixxQkFBcUIsRUFHckIsdUJBQXVCLEVBQ3ZCLGtCQUFrQixHQU1uQixNQUFNLGlCQUFpQixDQUFDO0FBSXpCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN2RCxPQUFPLFNBQVMsTUFBTSxjQUFjLENBQUM7QUFDckMsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDNUIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLGVBQWUsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUVuRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLHVCQUF1QixFQUFFLCtCQUErQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzlHLE9BQU8sS0FBSyxNQUFNLFNBQVMsQ0FBQztBQUU1QixNQUFNLE9BQWdCLGtCQUFtQixTQUFRLHNCQUFzQjtJQW1CckUsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFOckIsbUVBQW1FO1FBQ25FLDJFQUEyRTtRQUMzRSwrREFBK0Q7UUFDckQsZ0JBQVcsR0FBZ0IsRUFBRSxDQUFDLENBQUMsa0NBQWtDO1FBSXpFLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxXQUFXLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCxNQUFNLENBQUMsRUFBRSxPQUFPLEVBQWU7UUFDN0IsSUFBSSxDQUFD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QUFDLEVBQUUsQ0FBQztZQUN4QixNQUFNLElBQUkscUJBQXFCLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztRQUNwRSxDQUFDO0lBQ0gsQ0FBQztJQUVELFlBQVk7SUFDWixrQkFBa0I7SUFDbEIsWUFBWSxDQUFDLFNBQXdCLEVBQUUsU0FBaUI7UUFDdEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsa0JBQWtCO0lBQ1Isa0JBQWtCLENBQUMsRUFBRSxHQUFHLEVBQVc7UUFDM0MsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLE9BQU8sQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQzFDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCYXNlQWRkcmVzcyxcbiAgQmFzZUtleSxcbiAgQmFzZVRyYW5zYWN0aW9uQnVpbGRlcixcbiAgQnVpbGRUcmFuc2FjdGlvbkVycm9yLFxuICBEb3RBc3NldFR5cGVzLFxuICBGZWVPcHRpb25zLFxuICBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcixcbiAgaXNWYWxpZEVkMjU1MTlTZWVkLFxuICBQdWJsaWNLZXkgYXMgQmFzZVB1YmxpY0tleSxcbiAgU2VxdWVuY2VJZCxcbiAgU2lnbmF0dXJlLFxuICBUcmFuc2FjdGlvblR5cGUsXG4gIFZhbGlkaXR5V2luZG93LFxufSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZywgUG9sa2Fkb3RTcGVjTmFtZVR5cGUgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgeyBVbnNpZ25lZFRyYW5zYWN0aW9uIH0gZnJvbSAnQHN1YnN0cmF0ZS90eHdyYXBwZXItY29yZSc7XG5pbXBvcnQgeyBEZWNvZGVkU2lnbmVkVHgsIERlY29kZWRTaWduaW5nUGF5bG9hZCwgVHlwZVJlZ2lzdHJ5IH0gZnJvbSAnQHN1YnN0cmF0ZS90eHdyYXBwZXItY29yZS9saWIvdHlwZXMnO1xuaW1wb3J0IHsgZGVjb2RlIH0gZnJvbSAnQHN1YnN0cmF0ZS90eHdyYXBwZXItcG9sa2Fkb3QnO1xuaW1wb3J0IEJpZ051bWJlciBmcm9tICdiaWdudW1iZXIuanMnO1xuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgQWRkcmVzc1ZhbGlkYXRpb25FcnJvciwgSW52YWxpZEZlZUVycm9yIH0gZnJvbSAnLi9lcnJvcnMnO1xuaW1wb3J0IHsgQ3JlYXRlQmFzZVR4SW5mbywgTWF0ZXJpYWwsIFR4TWV0aG9kIH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBLZXlQYWlyIH0gZnJvbSAnLi9rZXlQYWlyJztcbmltcG9ydCB7IFNpbmdsZXRvblJlZ2lzdHJ5IH0gZnJvbSAnLi9zaW5nbGV0b25SZWdpc3RyeSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgQmFzZVRyYW5zYWN0aW9uU2NoZW1hLCBTaWduZWRUcmFuc2FjdGlvblNjaGVtYSwgU2lnbmluZ1BheWxvYWRUcmFuc2FjdGlvblNjaGVtYSB9IGZyb20gJy4vdHhuU2NoZW1hJztcbmltcG9ydCB1dGlscyBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRyYW5zYWN0aW9uQnVpbGRlciBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBwcm90ZWN0ZWQgX3RyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbjtcbiAgcHJvdGVjdGVkIF9rZXlQYWlyOiBLZXlQYWlyO1xuICBwcm90ZWN0ZWQgX3NpZ25hdHVyZT86IHN0cmluZztcbiAgcHJvdGVjdGVkIF9zZW5kZXI6IHN0cmluZztcblxuICBwcm90ZWN0ZWQgX2Jsb2NrTnVtYmVyOiBudW1iZXI7XG4gIHByb3RlY3RlZCBfcmVmZXJlbmNlQmxvY2s6IHN0cmluZztcbiAgcHJvdGVjdGVkIF9ub25jZTogbnVtYmVyO1xuICBwcm90ZWN0ZWQgX3RpcD86IG51bWJlcjtcbiAgcHJvdGVjdGVkIF9lcmFQZXJpb2Q/OiBudW1iZXI7XG4gIHByb3RlY3RlZCBfcmVnaXN0cnk6IFR5cGVSZWdpc3RyeTtcbiAgcHJvdGVjdGVkIF9tZXRob2Q/OiBUeE1ldGhvZDtcbiAgcHJvdGVjdGVkIF9fbWF0ZXJpYWw/OiBNYXRlcmlhbDtcbiAgLy8gc2lnbmF0dXJlcyB0aGF0IHdpbGwgYmUgdXNlZCB0byBzaWduIGEgdHJhbnNhY3Rpb24gd2hlbiBidWlsZGluZ1xuICAvLyBub3QgdGhlIHNhbWUgYXMgdGhlIF9zaWduYXR1cmVzIGluIHRyYW5zYWN0aW9uIHdoaWNoIGlzIHRoZSBzaWduYXR1cmUgaW5cbiAgLy8gc3RyaW5nIGhleCBmb3JtYXQgdXNlZCBmb3IgdmFsaWRhdGlvbiBhZnRlciB3ZSBjYWxsIC5idWlsZCgpXG4gIHByb3RlY3RlZCBfc2lnbmF0dXJlczogU2lnbmF0dXJlW10gPSBbXTsgLy8gb25seSBzdXBwb3J0IHNpbmdsZSBzaWcgZm9yIG5vd1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgICB0aGlzLl90cmFuc2FjdGlvbiA9IG5ldyBUcmFuc2FjdGlvbihfY29pbkNvbmZpZyk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgYWRkcmVzcyBvZiBzZW5kaW5nIGFjY291bnQuXG4gICAqXG4gICAqIEBwYXJhbSB7QmFzZUFkZHJlc3N9IGFkZHJlc3MgVGhlIFNTNTgtZW5jb2RlZCBhZGRyZXNzLlxuICAgKiBAcmV0dXJucyB7VHJhbnNhY3Rpb25CdWlsZGVyfSBUaGlzIHRyYW5zYWN0aW9uIGJ1aWxkZXIuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly93aWtpLnBvbGthZG90Lm5ldHdvcmsvZG9jcy9idWlsZC10cmFuc2FjdGlvbi1jb25zdHJ1Y3Rpb25cbiAgICovXG4gIHNlbmRlcih7IGFkZHJlc3MgfTogQmFzZUFkZHJlc3MpOiB0aGlzIHtcbiAgICB0aGlzLnZhbGlkYXRlQWRkcmVzcyh7IGFkZHJlc3MgfSk7XG4gICAgdGhpcy5fc2VuZGVyID0gYWRkcmVzcztcbiAgICB0aGlzLl90cmFuc2FjdGlvbi5zZW5kZXIoYWRkcmVzcyk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogVGhlIG5vbmNlIGZvciB0aGlzIHRyYW5zYWN0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0ge251bWJlcn0gbm9uY2VcbiAgICogQHJldHVybnMge1RyYW5zYWN0aW9uQnVpbGRlcn0gVGhpcyB0cmFuc2FjdGlvbiBidWlsZGVyLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vd2lraS5wb2xrYWRvdC5uZXR3b3JrL2RvY3MvYnVpbGQtdHJhbnNhY3Rpb24tY29uc3RydWN0aW9uXG4gICAqL1xuICBzZXF1ZW5jZUlkKG5vbmNlOiBTZXF1ZW5jZUlkKTogdGhpcyB7XG4gICAgY29uc3QgdmFsdWUgPSBuZXcgQmlnTnVtYmVyKG5vbmNlLnZhbHVlKTtcbiAgICB0aGlzLnZhbGlkYXRlVmFsdWUodmFsdWUpO1xuICAgIHRoaXMuX25vbmNlID0gdmFsdWUudG9OdW1iZXIoKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgdGlwIHRvIGluY3JlYXNlIHRyYW5zYWN0aW9uIHByaW9yaXR5LlxuICAgKlxuICAgKiBAcGFyYW0ge251bWJlciB8IHVuZGVmaW5lZH0gW2ZlZS50eXBlXSBvcHRpb25zIGZvciBidWlsZGluZyBmZWUgdHhcbiAgICogQHJldHVybnMge1RyYW5zYWN0aW9uQnVpbGRlcn0gVGhpcyB0cmFuc2FjdGlvbiBidWlsZGVyLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vd2lraS5wb2xrYWRvdC5uZXR3b3JrL2RvY3MvYnVpbGQtdHJhbnNhY3Rpb24tY29uc3RydWN0aW9uXG4gICAqL1xuICBmZWUoZmVlOiBGZWVPcHRpb25zKTogdGhpcyB7XG4gICAgaWYgKGZlZS50eXBlICE9PSAndGlwJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRGZWVFcnJvcihmZWUudHlwZSwgJ3RpcCcpO1xuICAgIH1cbiAgICBjb25zdCB0aXBCTiA9IG5ldyBCaWdOdW1iZXIoZmVlLmFtb3VudCk7XG4gICAgdGhpcy52YWxpZGF0ZVZhbHVlKHRpcEJOKTtcbiAgICB0aGlzLl90aXAgPSB0aXBCTi50b051bWJlcigpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBudW1iZXIgb2YgdGhlIGNoZWNrcG9pbnQgYmxvY2sgYWZ0ZXIgd2hpY2ggdGhlIHRyYW5zYWN0aW9uIGlzIHZhbGlkXG4gICAqXG4gICAqIEBwYXJhbSB7VmFsaWRpdHlXaW5kb3d9IGZpcnN0VmFsaWQgYmxvY2sgY2hlY2twb2ludCB3aGVyZSB0cmFuc2FjdGlvbiBpcyBmaXJzdCB2YWxpZFxuICAgKiBAcGFyYW0ge1ZhbGlkaXR5V2luZG93fSBtYXhEdXJhdGlvbiBudW1iZXIgb2YgYmxvY2tzIGFmdGVyIGNoZWNrcG9pbnQgZm9yIHdoaWNoIHRyYW5zYWN0aW9uIGlzIHZhbGlkXG4gICAqIEByZXR1cm5zIHtUcmFuc2FjdGlvbkJ1aWxkZXJ9IFRoaXMgdHJhbnNhY3Rpb24gYnVpbGRlci5cbiAgICpcbiAgICogQHNlZSBodHRwczovL3dpa2kucG9sa2Fkb3QubmV0d29yay9kb2NzL2J1aWxkLXRyYW5zYWN0aW9uLWNvbnN0cnVjdGlvblxuICAgKi9cbiAgdmFsaWRpdHkoeyBmaXJzdFZhbGlkLCBtYXhEdXJhdGlvbiB9OiBWYWxpZGl0eVdpbmRvdyk6IHRoaXMge1xuICAgIGlmICghXy5pc1VuZGVmaW5lZChmaXJzdFZhbGlkKSkge1xuICAgICAgdGhpcy52YWxpZGF0ZVZhbHVlKG5ldyBCaWdOdW1iZXIoZmlyc3RWYWxpZCkpO1xuICAgICAgdGhpcy5fYmxvY2tOdW1iZXIgPSBmaXJzdFZhbGlkO1xuICAgIH1cbiAgICBpZiAoIV8uaXNVbmRlZmluZWQobWF4RHVyYXRpb24pKSB7XG4gICAgICB0aGlzLnZhbGlkYXRlVmFsdWUobmV3IEJpZ051bWJlcihtYXhEdXJhdGlvbikpO1xuICAgICAgdGhpcy5fZXJhUGVyaW9kID0gbWF4RHVyYXRpb247XG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBoYXNoIG9mIHRoZSBjaGVja3BvaW50IGJsb2NrLlxuICAgKlxuICAgKiBAcGFyYW0ge251bWJlcn0gcmVmZXJlbmNlQmxvY2sgYmxvY2sgaGFzaCBjaGVja3BvaW50IGZyb20gd2hlcmUgdGhlIHRyYW5zYWN0aW9uIGlzIHZhbGlkXG4gICAqIEByZXR1cm5zIHtUcmFuc2FjdGlvbkJ1aWxkZXJ9IFRoaXMgdHJhbnNhY3Rpb24gYnVpbGRlci5cbiAgICpcbiAgICogQHNlZSBodHRwczovL3dpa2kucG9sa2Fkb3QubmV0d29yay9kb2NzL2J1aWxkLXRyYW5zYWN0aW9uLWNvbnN0cnVjdGlvblxuICAgKiBAc2VlIGh0dHBzOi8vd2lraS5wb2xrYWRvdC5uZXR3b3JrL2RvY3MvYnVpbGQtcHJvdG9jb2wtaW5mbyN0cmFuc2FjdGlvbi1tb3J0YWxpdHlcbiAgICovXG4gIHJlZmVyZW5jZUJsb2NrKHJlZmVyZW5jZUJsb2NrOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLl9yZWZlcmVuY2VCbG9jayA9IHJlZmVyZW5jZUJsb2NrO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBjdXJyZW50IHZlcnNpb24gZm9yIHRyYW5zYWN0aW9uIGZvcm1hdC5cbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IHRyYW5zYWN0aW9uVmVyc2lvblxuICAgKiBAcmV0dXJucyB7VHJhbnNhY3Rpb25CdWlsZGVyfSBUaGlzIHRyYW5zYWN0aW9uIGJ1aWxkZXIuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly93aWtpLnBvbGthZG90Lm5ldHdvcmsvZG9jcy9idWlsZC10cmFuc2FjdGlvbi1jb25zdHJ1Y3Rpb25cbiAgICogQGRlcHJlY2F0ZWQgVGhpcyBmaWVsZCB3YXMgYWRkZWQgaW4gbWF0ZXJpYWwgZGF0YS5cbiAgICovXG4gIHZlcnNpb24odHJhbnNhY3Rpb25WZXJzaW9uOiBudW1iZXIpOiB0aGlzIHtcbiAgICAvLyB0aGlzLl90cmFuc2FjdGlvblZlcnNpb24gPSB0cmFuc2FjdGlvblZlcnNpb247XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwcml2YXRlIG1ldGhvZChtZXRob2Q6IFR4TWV0aG9kKTogdGhpcyB7XG4gICAgdGhpcy5fbWV0aG9kID0gbWV0aG9kO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBtYXRlcmlhbCBkYXRhIGZvciB0aGUgYmxvY2suXG4gICAqXG4gICAqIEBwYXJhbSB7TWF0ZXJpYWx9IG1hdGVyaWFsXG4gICAqIEByZXR1cm5zIHtUcmFuc2FjdGlvbkJ1aWxkZXJ9IFRoaXMgdHJhbnNhY3Rpb24gYnVpbGRlci5cbiAgICpcbiAgICogQHNlZSBodHRwczovL3dpa2kucG9sa2Fkb3QubmV0d29yay9kb2NzL2J1aWxkLXRyYW5zYWN0aW9uLWNvbnN0cnVjdGlvblxuICAgKi9cbiAgbWF0ZXJpYWwobWF0ZXJpYWw6IE1hdGVyaWFsKTogdGhpcyB7XG4gICAgdGhpcy5fX21hdGVyaWFsID0gbWF0ZXJpYWw7XG4gICAgdGhpcy5fcmVnaXN0cnkgPSBTaW5nbGV0b25SZWdpc3RyeS5nZXRJbnN0YW5jZShtYXRlcmlhbCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IF9tYXRlcmlhbCgpOiBNYXRlcmlhbCB7XG4gICAgaWYgKCF0aGlzLl9fbWF0ZXJpYWwpIHtcbiAgICAgIGNvbnN0IG0gPSB1dGlscy5nZXRNYXRlcmlhbCh0aGlzLl9jb2luQ29uZmlnKTtcbiAgICAgIHRoaXMubWF0ZXJpYWwobSk7XG4gICAgICByZXR1cm4gbTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuX19tYXRlcmlhbDtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgZ2V0IHRyYW5zYWN0aW9uKCk6IFRyYW5zYWN0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5fdHJhbnNhY3Rpb247XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIHNldCB0cmFuc2FjdGlvbih0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pIHtcbiAgICB0aGlzLl90cmFuc2FjdGlvbiA9IHRyYW5zYWN0aW9uO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBmcm9tSW1wbGVtZW50YXRpb24ocmF3VHJhbnNhY3Rpb246IHN0cmluZyk6IFRyYW5zYWN0aW9uIHtcbiAgICBjb25zdCBkZWNvZGVkVHhuID0gZGVjb2RlKHJhd1RyYW5zYWN0aW9uLCB7XG4gICAgICBtZXRhZGF0YVJwYzogdGhpcy5fbWF0ZXJpYWwubWV0YWRhdGEsXG4gICAgICByZWdpc3RyeTogdGhpcy5fcmVnaXN0cnksXG4gICAgfSkgYXMgRGVjb2RlZFNpZ25pbmdQYXlsb2FkIHwgRGVjb2RlZFNpZ25lZFR4O1xuICAgIGlmICh1dGlscy5pc1NpZ25pbmdQYXlsb2FkKGRlY29kZWRUeG4pKSB7XG4gICAgICB0aGlzLnJlZmVyZW5jZUJsb2NrKGRlY29kZWRUeG4uYmxvY2tIYXNoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3Qga2V5cGFpciA9IHV0aWxzLmRlY29kZURvdEFkZHJlc3NUb0tleVBhaXIoZGVjb2RlZFR4bi5hZGRyZXNzKTtcbiAgICAgIHRoaXMuc2VuZGVyKHsgYWRkcmVzczoga2V5cGFpci5nZXRBZGRyZXNzKHV0aWxzLmdldEFkZHJlc3NGb3JtYXQodGhpcy5fY29pbkNvbmZpZy5uYW1lIGFzIERvdEFzc2V0VHlwZXMpKSB9KTtcbiAgICAgIGNvbnN0IGVkU2lnbmF0dXJlID0gdXRpbHMucmVjb3ZlclNpZ25hdHVyZUZyb21SYXdUeChyYXdUcmFuc2FjdGlvbiwgeyByZWdpc3RyeTogdGhpcy5fcmVnaXN0cnkgfSk7XG4gICAgICB0aGlzLmFkZFNpZ25hdHVyZShrZXlwYWlyLmdldEtleXMoKSwgQnVmZmVyLmZyb20oZWRTaWduYXR1cmUsICdoZXgnKSk7XG4gICAgfVxuICAgIHRoaXMudmFsaWRpdHkoeyBtYXhEdXJhdGlvbjogZGVjb2RlZFR4bi5lcmFQZXJpb2QgfSk7XG4gICAgdGhpcy5zZXF1ZW5jZUlkKHtcbiAgICAgIG5hbWU6ICdOb25jZScsXG4gICAgICBrZXl3b3JkOiAnbm9uY2UnLFxuICAgICAgdmFsdWU6IGRlY29kZWRUeG4ubm9uY2UsXG4gICAgfSk7XG4gICAgaWYgKGRlY29kZWRUeG4udGlwKSB7XG4gICAgICB0aGlzLmZlZSh7IGFtb3VudDogYCR7ZGVjb2RlZFR4bi50aXB9YCwgdHlwZTogJ3RpcCcgfSk7XG4gICAgfVxuICAgIHRoaXMubWV0aG9kKGRlY29kZWRUeG4ubWV0aG9kIGFzIHVua25vd24gYXMgVHhNZXRob2QpO1xuICAgIHJldHVybiB0aGlzLl90cmFuc2FjdGlvbjtcbiAgfVxuXG4gIGdldE1ldGhvZEFuZEFyZ3VtZW50cygpOiBzdHJpbmcge1xuICAgIHRoaXMudmFsaWRhdGVUcmFuc2FjdGlvbih0aGlzLnRyYW5zYWN0aW9uKTtcbiAgICBjb25zdCB1bnNpZ25lZFRyYW5zYWN0aW9uID0gdGhpcy5idWlsZFRyYW5zYWN0aW9uKCk7XG4gICAgcmV0dXJuIHVuc2lnbmVkVHJhbnNhY3Rpb24ubWV0aG9kO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBhc3luYyBidWlsZEltcGxlbWVudGF0aW9uKCk6IFByb21pc2U8VHJhbnNhY3Rpb24+IHtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLnNldFRyYW5zYWN0aW9uKHRoaXMuYnVpbGRUcmFuc2FjdGlvbigpKTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uVHlwZSh0aGlzLnRyYW5zYWN0aW9uVHlwZSk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5yZWdpc3RyeSh0aGlzLl9yZWdpc3RyeSk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5jaGFpbk5hbWUodGhpcy5fbWF0ZXJpYWwuY2hhaW5OYW1lKTtcbiAgICBpZiAodGhpcy5fa2V5UGFpcikge1xuICAgICAgdGhpcy50cmFuc2FjdGlvbi5zaWduKHRoaXMuX2tleVBhaXIpO1xuICAgIH1cbiAgICBpZiAodGhpcy5fc2lnbmF0dXJlcz8ubGVuZ3RoID4gMCkge1xuICAgICAgLy8gaWYgd2UgaGF2ZSBhIHNpZ25hdHVyZSwgYXBwbHkgdGhhdCBhbmQgdXBkYXRlIHRoaXMuX3NpZ25lZFRyYW5zYWN0aW9uXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLmNvbnN0cnVjdFNpZ25lZFBheWxvYWQodGhpcy5fc2lnbmF0dXJlc1swXS5zaWduYXR1cmUpO1xuICAgIH1cbiAgICB0aGlzLl90cmFuc2FjdGlvbi5sb2FkSW5wdXRzQW5kT3V0cHV0cygpO1xuXG4gICAgcmV0dXJuIHRoaXMuX3RyYW5zYWN0aW9uO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZUJhc2VUeEluZm8oKTogQ3JlYXRlQmFzZVR4SW5mbyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGJhc2VUeEluZm86IHtcbiAgICAgICAgYWRkcmVzczogdGhpcy5fc2VuZGVyLFxuICAgICAgICBibG9ja0hhc2g6IHRoaXMuX3JlZmVyZW5jZUJsb2NrLFxuICAgICAgICBibG9ja051bWJlcjogdGhpcy5fcmVnaXN0cnkuY3JlYXRlVHlwZSgnQmxvY2tOdW1iZXInLCB0aGlzLl9ibG9ja051bWJlcikudG9OdW1iZXIoKSxcbiAgICAgICAgZXJhUGVyaW9kOiB0aGlzLl9lcmFQZXJpb2QsXG4gICAgICAgIGdlbmVzaXNIYXNoOiB0aGlzLl9tYXRlcmlhbC5nZW5lc2lzSGFzaCxcbiAgICAgICAgbWV0YWRhdGFScGM6IHRoaXMuX21hdGVyaWFsLm1ldGFkYXRhLFxuICAgICAgICBzcGVjVmVyc2lvbjogdGhpcy5fbWF0ZXJpYWwuc3BlY1ZlcnNpb24sXG4gICAgICAgIHRyYW5zYWN0aW9uVmVyc2lvbjogdGhpcy5fbWF0ZXJpYWwudHhWZXJzaW9uLFxuICAgICAgICBub25jZTogdGhpcy5fbm9uY2UsXG4gICAgICAgIHRpcDogdGhpcy5fdGlwLFxuICAgICAgICBtb2RlOiAwLFxuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgbWV0YWRhdGFScGM6IHRoaXMuX21hdGVyaWFsLm1ldGFkYXRhLFxuICAgICAgICByZWdpc3RyeTogdGhpcy5fcmVnaXN0cnksXG4gICAgICAgIGlzSW1tb3J0YWxFcmE6IHRoaXMuX2VyYVBlcmlvZCA9PT0gMCxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZHMgdGhlIHNwZWNpZmljIHRyYW5zYWN0aW9uIGJ1aWxkZXIgaW50ZXJuYWxseVxuICAgKiB1c2luZyB0aGUgQHN1YnN0cmF0ZS90eHdyYXBwZXIgYnVpbGRlci5cbiAgICovXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBidWlsZFRyYW5zYWN0aW9uKCk6IFVuc2lnbmVkVHJhbnNhY3Rpb247XG5cbiAgLyoqXG4gICAqIFRoZSB0cmFuc2FjdGlvbiB0eXBlLlxuICAgKi9cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlO1xuXG4gIC8vIHJlZ2lvbiBWYWxpZGF0b3JzXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZUFkZHJlc3MoYWRkcmVzczogQmFzZUFkZHJlc3MsIGFkZHJlc3NGb3JtYXQ/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoIXV0aWxzLmlzVmFsaWRBZGRyZXNzKGFkZHJlc3MuYWRkcmVzcykpIHtcbiAgICAgIHRocm93IG5ldyBBZGRyZXNzVmFsaWRhdGlvbkVycm9yKGFkZHJlc3MuYWRkcmVzcyk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlS2V5KHsga2V5IH06IEJhc2VLZXkpOiB2b2lkIHtcbiAgICBsZXQgaXNWYWxpZFByaXZhdGVLZXlGcm9tQnl0ZXM7XG4gICAgY29uc3QgaXNWYWxpZFByaXZhdGVLZXlGcm9tSGV4ID0gaXNWYWxpZEVkMjU1MTlTZWVkKGtleSk7XG4gICAgY29uc3QgaXNWYWxpZFByaXZhdGVLZXlGcm9tQmFzZTY0ID0gaXNWYWxpZEVkMjU1MTlTZWVkKEJ1ZmZlci5mcm9tKGtleSwgJ2Jhc2U2NCcpLnRvU3RyaW5nKCdoZXgnKSk7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGRlY29kZWRTZWVkID0gdXRpbHMuZGVjb2RlU2VlZChrZXkpO1xuICAgICAgaXNWYWxpZFByaXZhdGVLZXlGcm9tQnl0ZXMgPSBpc1ZhbGlkRWQyNTUxOVNlZWQoQnVmZmVyLmZyb20oZGVjb2RlZFNlZWQuc2VlZCkudG9TdHJpbmcoJ2hleCcpKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGlzVmFsaWRQcml2YXRlS2V5RnJvbUJ5dGVzID0gZmFsc2U7XG4gICAgfVxuXG4gICAgaWYgKCFpc1ZhbGlkUHJpdmF0ZUtleUZyb21CeXRlcyAmJiAhaXNWYWxpZFByaXZhdGVLZXlGcm9tSGV4ICYmICFpc1ZhbGlkUHJpdmF0ZUtleUZyb21CYXNlNjQpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoYEtleSB2YWxpZGF0aW9uIGZhaWxlZGApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZXMgdGhlIHNwZWNpZmljIHRyYW5zYWN0aW9uIGJ1aWxkZXIgaW50ZXJuYWxseVxuICAgKi9cbiAgcHJvdGVjdGVkIGFic3RyYWN0IHZhbGlkYXRlRGVjb2RlZFRyYW5zYWN0aW9uKFxuICAgIGRlY29kZWRUeG46IERlY29kZWRTaWduaW5nUGF5bG9hZCB8IERlY29kZWRTaWduZWRUeCxcbiAgICByYXdUcmFuc2FjdGlvbj86IHN0cmluZ1xuICApOiB2b2lkO1xuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBkZWNvZGVkVHhuID0gZGVjb2RlKHJhd1RyYW5zYWN0aW9uLCB7XG4gICAgICBtZXRhZGF0YVJwYzogdGhpcy5fbWF0ZXJpYWwubWV0YWRhdGEsXG4gICAgICByZWdpc3RyeTogdGhpcy5fcmVnaXN0cnksXG4gICAgfSkgYXMgRGVjb2RlZFNpZ25pbmdQYXlsb2FkIHwgRGVjb2RlZFNpZ25lZFR4O1xuXG4gICAgY29uc3QgZXJhUGVyaW9kID0gZGVjb2RlZFR4bi5lcmFQZXJpb2Q7XG4gICAgY29uc3Qgbm9uY2UgPSBkZWNvZGVkVHhuLm5vbmNlO1xuICAgIGNvbnN0IHRpcCA9IGRlY29kZWRUeG4udGlwO1xuXG4gICAgaWYgKHV0aWxzLmlzU2lnbmluZ1BheWxvYWQoZGVjb2RlZFR4bikpIHtcbiAgICAgIGNvbnN0IGJsb2NrSGFzaCA9IGRlY29kZWRUeG4uYmxvY2tIYXNoO1xuICAgICAgY29uc3QgdmFsaWRhdGlvblJlc3VsdCA9IFNpZ25pbmdQYXlsb2FkVHJhbnNhY3Rpb25TY2hlbWEudmFsaWRhdGUoe1xuICAgICAgICBlcmFQZXJpb2QsXG4gICAgICAgIGJsb2NrSGFzaCxcbiAgICAgICAgbm9uY2UsXG4gICAgICAgIHRpcCxcbiAgICAgIH0pO1xuICAgICAgaWYgKHZhbGlkYXRpb25SZXN1bHQuZXJyb3IpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKGBUcmFuc2FjdGlvbiB2YWxpZGF0aW9uIGZhaWxlZDogJHt2YWxpZGF0aW9uUmVzdWx0LmVycm9yLm1lc3NhZ2V9YCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHNlbmRlciA9IGRlY29kZWRUeG4uYWRkcmVzcztcbiAgICAgIGNvbnN0IHZhbGlkYXRpb25SZXN1bHQgPSBTaWduZWRUcmFuc2FjdGlvblNjaGVtYS52YWxpZGF0ZSh7XG4gICAgICAgIHNlbmRlcixcbiAgICAgICAgbm9uY2UsXG4gICAgICAgIGVyYVBlcmlvZCxcbiAgICAgICAgdGlwLFxuICAgICAgfSk7XG4gICAgICBpZiAodmFsaWRhdGlvblJlc3VsdC5lcnJvcikge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYFRyYW5zYWN0aW9uIHZhbGlkYXRpb24gZmFpbGVkOiAke3ZhbGlkYXRpb25SZXN1bHQuZXJyb3IubWVzc2FnZX1gKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnZhbGlkYXRlRGVjb2RlZFRyYW5zYWN0aW9uKGRlY29kZWRUeG4sIHJhd1RyYW5zYWN0aW9uKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVRyYW5zYWN0aW9uKF86IFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgdGhpcy52YWxpZGF0ZUJhc2VGaWVsZHMoXG4gICAgICB0aGlzLl9zZW5kZXIsXG4gICAgICB0aGlzLl9ibG9ja051bWJlcixcbiAgICAgIHRoaXMuX3JlZmVyZW5jZUJsb2NrLFxuICAgICAgdGhpcy5fbWF0ZXJpYWwuZ2VuZXNpc0hhc2gsXG4gICAgICB0aGlzLl9tYXRlcmlhbC5jaGFpbk5hbWUsXG4gICAgICB0aGlzLl9ub25jZSxcbiAgICAgIHRoaXMuX21hdGVyaWFsLnNwZWNWZXJzaW9uLFxuICAgICAgdGhpcy5fbWF0ZXJpYWwuc3BlY05hbWUsXG4gICAgICB0aGlzLl9tYXRlcmlhbC50eFZlcnNpb24sXG4gICAgICB0aGlzLl9lcmFQZXJpb2QsXG4gICAgICB0aGlzLl90aXBcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSB2YWxpZGF0ZUJhc2VGaWVsZHMoXG4gICAgc2VuZGVyOiBzdHJpbmcsXG4gICAgYmxvY2tOdW1iZXI6IG51bWJlcixcbiAgICBibG9ja0hhc2g6IHN0cmluZyxcbiAgICBnZW5lc2lzSGFzaDogc3RyaW5nLFxuICAgIGNoYWluTmFtZTogc3RyaW5nLFxuICAgIG5vbmNlOiBudW1iZXIsXG4gICAgc3BlY1ZlcnNpb246IG51bWJlcixcbiAgICBzcGVjTmFtZTogUG9sa2Fkb3RTcGVjTmFtZVR5cGUsXG4gICAgdHJhbnNhY3Rpb25WZXJzaW9uOiBudW1iZXIsXG4gICAgZXJhUGVyaW9kOiBudW1iZXIgfCB1bmRlZmluZWQsXG4gICAgdGlwOiBudW1iZXIgfCB1bmRlZmluZWRcbiAgKTogdm9pZCB7XG4gICAgY29uc3QgdmFsaWRhdGlvblJlc3VsdCA9IEJhc2VUcmFuc2FjdGlvblNjaGVtYS52YWxpZGF0ZSh7XG4gICAgICBzZW5kZXIsXG4gICAgICBibG9ja051bWJlcixcbiAgICAgIGJsb2NrSGFzaCxcbiAgICAgIGdlbmVzaXNIYXNoLFxuICAgICAgY2hhaW5OYW1lLFxuICAgICAgbm9uY2UsXG4gICAgICBzcGVjVmVyc2lvbixcbiAgICAgIHNwZWNOYW1lLFxuICAgICAgdHJhbnNhY3Rpb25WZXJzaW9uLFxuICAgICAgZXJhUGVyaW9kLFxuICAgICAgdGlwLFxuICAgIH0pO1xuXG4gICAgaWYgKHZhbGlkYXRpb25SZXN1bHQuZXJyb3IpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihgVHJhbnNhY3Rpb24gdmFsaWRhdGlvbiBmYWlsZWQ6ICR7dmFsaWRhdGlvblJlc3VsdC5lcnJvci5tZXNzYWdlfWApO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVZhbHVlKHZhbHVlOiBCaWdOdW1iZXIpOiB2b2lkIHtcbiAgICBpZiAodmFsdWUuaXNMZXNzVGhhbigwKSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignVmFsdWUgY2Fubm90IGJlIGxlc3MgdGhhbiB6ZXJvJyk7XG4gICAgfVxuICB9XG5cbiAgLy8gZW5kcmVnaW9uXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBhZGRTaWduYXR1cmUocHVibGljS2V5OiBCYXNlUHVibGljS2V5LCBzaWduYXR1cmU6IEJ1ZmZlcik6IHZvaWQge1xuICAgIHRoaXMuX3NpZ25hdHVyZXMucHVzaCh7IHB1YmxpY0tleSwgc2lnbmF0dXJlIH0pO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBzaWduSW1wbGVtZW50YXRpb24oeyBrZXkgfTogQmFzZUtleSk6IFRyYW5zYWN0aW9uIHtcbiAgICB0aGlzLl9rZXlQYWlyID0gbmV3IEtleVBhaXIoeyBwcnY6IGtleSB9KTtcbiAgICByZXR1cm4gdGhpcy5fdHJhbnNhY3Rpb247XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { BaseTransactionBuilderFactory } from '@bitgo/sdk-core';
|
|
2
|
+
import { BaseCoin as CoinConfig } from '@bitgo/statics';
|
|
3
|
+
import { AddressInitializationBuilder } from './addressInitializationBuilder';
|
|
4
|
+
import { Material } from './iface';
|
|
5
|
+
import { RemoveProxyBuilder } from './proxyBuilder';
|
|
6
|
+
import { StakingBuilder } from './stakingBuilder';
|
|
7
|
+
import { TransferBuilder } from './transferBuilder';
|
|
8
|
+
import { TransactionBuilder } from './transactionBuilder';
|
|
9
|
+
import { UnnominateBuilder } from './unnominateBuilder';
|
|
10
|
+
import { BatchTransactionBuilder, ClaimBuilder, UnstakeBuilder, WithdrawUnstakedBuilder } from '.';
|
|
11
|
+
export declare class TransactionBuilderFactory extends BaseTransactionBuilderFactory {
|
|
12
|
+
protected _material: Material;
|
|
13
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
14
|
+
getTransferBuilder(): TransferBuilder;
|
|
15
|
+
getStakingBuilder(): StakingBuilder;
|
|
16
|
+
getAddressInitializationBuilder(): AddressInitializationBuilder;
|
|
17
|
+
getRemoveProxyBuilder(): RemoveProxyBuilder;
|
|
18
|
+
getBatchTransactionBuilder(): BatchTransactionBuilder;
|
|
19
|
+
getWalletInitializationBuilder(): void;
|
|
20
|
+
getUnstakeBuilder(): UnstakeBuilder;
|
|
21
|
+
getWithdrawUnstakedBuilder(): WithdrawUnstakedBuilder;
|
|
22
|
+
getClaimBuilder(): ClaimBuilder;
|
|
23
|
+
getUnnominateBuilder(): UnnominateBuilder;
|
|
24
|
+
from(rawTxn: string): TransactionBuilder;
|
|
25
|
+
material(material: Material): this;
|
|
26
|
+
private getBuilder;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=transactionBuilderFactory.d.ts.map
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { BaseTransactionBuilderFactory, NotImplementedError, NotSupported } from '@bitgo/sdk-core';
|
|
2
|
+
import { decode } from '@substrate/txwrapper-polkadot';
|
|
3
|
+
import { AddressInitializationBuilder } from './addressInitializationBuilder';
|
|
4
|
+
import { MethodNames } from './iface';
|
|
5
|
+
import { RemoveProxyBuilder } from './proxyBuilder';
|
|
6
|
+
import { SingletonRegistry } from './singletonRegistry';
|
|
7
|
+
import { StakingBuilder } from './stakingBuilder';
|
|
8
|
+
import { TransferBuilder } from './transferBuilder';
|
|
9
|
+
import { UnnominateBuilder } from './unnominateBuilder';
|
|
10
|
+
import utils from './utils';
|
|
11
|
+
import { BatchTransactionBuilder, ClaimBuilder, UnstakeBuilder, WithdrawUnstakedBuilder } from '.';
|
|
12
|
+
export class TransactionBuilderFactory extends BaseTransactionBuilderFactory {
|
|
13
|
+
constructor(_coinConfig) {
|
|
14
|
+
super(_coinConfig);
|
|
15
|
+
this._material = utils.getMaterial(_coinConfig);
|
|
16
|
+
}
|
|
17
|
+
getTransferBuilder() {
|
|
18
|
+
return new TransferBuilder(this._coinConfig).material(this._material);
|
|
19
|
+
}
|
|
20
|
+
getStakingBuilder() {
|
|
21
|
+
return new StakingBuilder(this._coinConfig).material(this._material);
|
|
22
|
+
}
|
|
23
|
+
getAddressInitializationBuilder() {
|
|
24
|
+
return new AddressInitializationBuilder(this._coinConfig).material(this._material);
|
|
25
|
+
}
|
|
26
|
+
getRemoveProxyBuilder() {
|
|
27
|
+
return new RemoveProxyBuilder(this._coinConfig).material(this._material);
|
|
28
|
+
}
|
|
29
|
+
getBatchTransactionBuilder() {
|
|
30
|
+
return new BatchTransactionBuilder(this._coinConfig).material(this._material);
|
|
31
|
+
}
|
|
32
|
+
getWalletInitializationBuilder() {
|
|
33
|
+
throw new NotImplementedError(`walletInitialization for ${this._coinConfig.name} not implemented`);
|
|
34
|
+
}
|
|
35
|
+
getUnstakeBuilder() {
|
|
36
|
+
return new UnstakeBuilder(this._coinConfig).material(this._material);
|
|
37
|
+
}
|
|
38
|
+
getWithdrawUnstakedBuilder() {
|
|
39
|
+
return new WithdrawUnstakedBuilder(this._coinConfig).material(this._material);
|
|
40
|
+
}
|
|
41
|
+
getClaimBuilder() {
|
|
42
|
+
return new ClaimBuilder(this._coinConfig).material(this._material);
|
|
43
|
+
}
|
|
44
|
+
getUnnominateBuilder() {
|
|
45
|
+
return new UnnominateBuilder(this._coinConfig);
|
|
46
|
+
}
|
|
47
|
+
from(rawTxn) {
|
|
48
|
+
const builder = this.getBuilder(rawTxn);
|
|
49
|
+
builder.from(rawTxn);
|
|
50
|
+
return builder;
|
|
51
|
+
}
|
|
52
|
+
material(material) {
|
|
53
|
+
this._material = material;
|
|
54
|
+
return this;
|
|
55
|
+
}
|
|
56
|
+
getBuilder(rawTxn) {
|
|
57
|
+
const registry = SingletonRegistry.getInstance(this._material);
|
|
58
|
+
const decodedTxn = decode(rawTxn, {
|
|
59
|
+
metadataRpc: this._material.metadata,
|
|
60
|
+
registry: registry,
|
|
61
|
+
});
|
|
62
|
+
const methodName = decodedTxn.method?.name;
|
|
63
|
+
if (methodName === MethodNames.TransferKeepAlive ||
|
|
64
|
+
methodName === MethodNames.TransferAll ||
|
|
65
|
+
methodName === MethodNames.Proxy) {
|
|
66
|
+
return this.getTransferBuilder();
|
|
67
|
+
}
|
|
68
|
+
else if (methodName === MethodNames.Bond || methodName === MethodNames.BondExtra) {
|
|
69
|
+
return this.getStakingBuilder();
|
|
70
|
+
}
|
|
71
|
+
else if (methodName === MethodNames.AddProxy) {
|
|
72
|
+
return this.getAddressInitializationBuilder();
|
|
73
|
+
}
|
|
74
|
+
else if (methodName === MethodNames.RemoveProxy) {
|
|
75
|
+
return this.getRemoveProxyBuilder();
|
|
76
|
+
}
|
|
77
|
+
else if (methodName === MethodNames.Unbond) {
|
|
78
|
+
return this.getUnstakeBuilder();
|
|
79
|
+
}
|
|
80
|
+
else if (methodName === MethodNames.Chill) {
|
|
81
|
+
return this.getUnnominateBuilder();
|
|
82
|
+
}
|
|
83
|
+
else if (methodName === MethodNames.WithdrawUnbonded) {
|
|
84
|
+
return this.getWithdrawUnstakedBuilder();
|
|
85
|
+
}
|
|
86
|
+
else if (methodName === MethodNames.PayoutStakers) {
|
|
87
|
+
return this.getClaimBuilder();
|
|
88
|
+
}
|
|
89
|
+
else if (methodName === MethodNames.Batch || methodName === MethodNames.BatchAll) {
|
|
90
|
+
return this.getBatchTransactionBuilder();
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
throw new NotSupported('Transaction cannot be parsed or has an unsupported transaction type');
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsbUJBQW1CLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFbkcsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzlFLE9BQU8sRUFBWSxXQUFXLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDaEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVwRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RCxPQUFPLEtBQUssTUFBTSxTQUFTLENBQUM7QUFDNUIsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxHQUFHLENBQUM7QUFFbkcsTUFBTSxPQUFPLHlCQUEwQixTQUFRLDZCQUE2QjtJQUcxRSxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixPQUFPLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxRQUFRLENBQUMs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WUFDL0MsT0FBTyxJQUFJLENBQUMsK0JBQStCLEVBQUUsQ0FBQztRQUNoRCxDQUFDO2FBQU0sSUFBSSxVQUFVLEtBQUssV0FBVyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2xELE9BQU8sSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDdEMsQ0FBQzthQUFNLElBQUksVUFBVSxLQUFLLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUM3QyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ2xDLENBQUM7YUFBTSxJQUFJLFVBQVUsS0FBSyxXQUFXLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDNUMsT0FBTyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUNyQyxDQUFDO2FBQU0sSUFBSSxVQUFVLEtBQUssV0FBVyxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDdkQsT0FBTyxJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQztRQUMzQyxDQUFDO2FBQU0sSUFBSSxVQUFVLEtBQUssV0FBVyxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3BELE9BQU8sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ2hDLENBQUM7YUFBTSxJQUFJLFVBQVUsS0FBSyxXQUFXLENBQUMsS0FBSyxJQUFJLFVBQVUsS0FBSyxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbkYsT0FBTyxJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQztRQUMzQyxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sSUFBSSxZQUFZLENBQUMscUVBQXFFLENBQUMsQ0FBQztRQUNoRyxDQUFDO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZVRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksIE5vdEltcGxlbWVudGVkRXJyb3IsIE5vdFN1cHBvcnRlZCB9IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHsgZGVjb2RlIH0gZnJvbSAnQHN1YnN0cmF0ZS90eHdyYXBwZXItcG9sa2Fkb3QnO1xuaW1wb3J0IHsgQWRkcmVzc0luaXRpYWxpemF0aW9uQnVpbGRlciB9IGZyb20gJy4vYWRkcmVzc0luaXRpYWxpemF0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyBNYXRlcmlhbCwgTWV0aG9kTmFtZXMgfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IFJlbW92ZVByb3h5QnVpbGRlciB9IGZyb20gJy4vcHJveHlCdWlsZGVyJztcbmltcG9ydCB7IFNpbmdsZXRvblJlZ2lzdHJ5IH0gZnJvbSAnLi9zaW5nbGV0b25SZWdpc3RyeSc7XG5pbXBvcnQgeyBTdGFraW5nQnVpbGRlciB9IGZyb20gJy4vc3Rha2luZ0J1aWxkZXInO1xuaW1wb3J0IHsgVHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi90cmFuc2ZlckJ1aWxkZXInO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXInO1xuaW1wb3J0IHsgVW5ub21pbmF0ZUJ1aWxkZXIgfSBmcm9tICcuL3Vubm9taW5hdGVCdWlsZGVyJztcbmltcG9ydCB1dGlscyBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IEJhdGNoVHJhbnNhY3Rpb25CdWlsZGVyLCBDbGFpbUJ1aWxkZXIsIFVuc3Rha2VCdWlsZGVyLCBXaXRoZHJhd1Vuc3Rha2VkQnVpbGRlciB9IGZyb20gJy4nO1xuXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IHtcbiAgcHJvdGVjdGVkIF9tYXRlcmlhbDogTWF0ZXJpYWw7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIHRoaXMuX21hdGVyaWFsID0gdXRpbHMuZ2V0TWF0ZXJpYWwoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgZ2V0VHJhbnNmZXJCdWlsZGVyKCk6IFRyYW5zZmVyQnVpbGRlciB7XG4gICAgcmV0dXJuIG5ldyBUcmFuc2ZlckJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZykubWF0ZXJpYWwodGhpcy5fbWF0ZXJpYWwpO1xuICB9XG5cbiAgZ2V0U3Rha2luZ0J1aWxkZXIoKTogU3Rha2luZ0J1aWxkZXIge1xuICAgIHJldHVybiBuZXcgU3Rha2luZ0J1aWxkZXIodGhpcy5fY29pbkNvbmZpZykubWF0ZXJpYWwodGhpcy5fbWF0ZXJpYWwpO1xuICB9XG5cbiAgZ2V0QWRkcmVzc0luaXRpYWxpemF0aW9uQnVpbGRlcigpOiBBZGRyZXNzSW5pdGlhbGl6YXRpb25CdWlsZGVyIHtcbiAgICByZXR1cm4gbmV3IEFkZHJlc3NJbml0aWFsaXphdGlvbkJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZykubWF0ZXJpYWwodGhpcy5fbWF0ZXJpYWwpO1xuICB9XG5cbiAgZ2V0UmVtb3ZlUHJveHlCdWlsZGVyKCk6IFJlbW92ZVByb3h5QnVpbGRlciB7XG4gICAgcmV0dXJuIG5ldyBSZW1vdmVQcm94eUJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZykubWF0ZXJpYWwodGhpcy5fbWF0ZXJpYWwpO1xuICB9XG5cbiAgZ2V0QmF0Y2hUcmFuc2FjdGlvbkJ1aWxkZXIoKTogQmF0Y2hUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICAgIHJldHVybiBuZXcgQmF0Y2hUcmFuc2FjdGlvbkJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZykubWF0ZXJpYWwodGhpcy5fbWF0ZXJpYWwpO1xuICB9XG5cbiAgZ2V0V2FsbGV0SW5pdGlhbGl6YXRpb25CdWlsZGVyKCk6IHZvaWQge1xuICAgIHRocm93IG5ldyBOb3RJbXBsZW1lbnRlZEVycm9yKGB3YWxsZXRJbml0aWFsaXphdGlvbiBmb3IgJHt0aGlzLl9jb2luQ29uZmlnLm5hbWV9IG5vdCBpbXBsZW1lbnRlZGApO1xuICB9XG5cbiAgZ2V0VW5zdGFrZUJ1aWxkZXIoKTogVW5zdGFrZUJ1aWxkZXIge1xuICAgIHJldHVybiBuZXcgVW5zdGFrZUJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZykubWF0ZXJpYWwodGhpcy5fbWF0ZXJpYWwpO1xuICB9XG5cbiAgZ2V0V2l0aGRyYXdVbnN0YWtlZEJ1aWxkZXIoKTogV2l0aGRyYXdVbnN0YWtlZEJ1aWxkZXIge1xuICAgIHJldHVybiBuZXcgV2l0aGRyYXdVbnN0YWtlZEJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZykubWF0ZXJpYWwodGhpcy5fbWF0ZXJpYWwpO1xuICB9XG5cbiAgZ2V0Q2xhaW1CdWlsZGVyKCk6IENsYWltQnVpbGRlciB7XG4gICAgcmV0dXJuIG5ldyBDbGFpbUJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZykubWF0ZXJpYWwodGhpcy5fbWF0ZXJpYWwpO1xuICB9XG5cbiAgZ2V0VW5ub21pbmF0ZUJ1aWxkZXIoKTogVW5ub21pbmF0ZUJ1aWxkZXIge1xuICAgIHJldHVybiBuZXcgVW5ub21pbmF0ZUJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZyk7XG4gIH1cblxuICBmcm9tKHJhd1R4bjogc3RyaW5nKTogVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgICBjb25zdCBidWlsZGVyID0gdGhpcy5nZXRCdWlsZGVyKHJhd1R4bik7XG4gICAgYnVpbGRlci5mcm9tKHJhd1R4bik7XG4gICAgcmV0dXJuIGJ1aWxkZXI7XG4gIH1cblxuICBtYXRlcmlhbChtYXRlcmlhbDogTWF0ZXJpYWwpOiB0aGlzIHtcbiAgICB0aGlzLl9tYXRlcmlhbCA9IG1hdGVyaWFsO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRCdWlsZGVyKHJhd1R4bjogc3RyaW5nKTogVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgICBjb25zdCByZWdpc3RyeSA9IFNpbmdsZXRvblJlZ2lzdHJ5LmdldEluc3RhbmNlKHRoaXMuX21hdGVyaWFsKTtcbiAgICBjb25zdCBkZWNvZGVkVHhuID0gZGVjb2RlKHJhd1R4biwge1xuICAgICAgbWV0YWRhdGFScGM6IHRoaXMuX21hdGVyaWFsLm1ldGFkYXRhLFxuICAgICAgcmVnaXN0cnk6IHJlZ2lzdHJ5LFxuICAgIH0pO1xuXG4gICAgY29uc3QgbWV0aG9kTmFtZSA9IGRlY29kZWRUeG4ubWV0aG9kPy5uYW1lO1xuICAgIGlmIChcbiAgICAgIG1ldGhvZE5hbWUgPT09IE1ldGhvZE5hbWVzLlRyYW5zZmVyS2VlcEFsaXZlIHx8XG4gICAgICBtZXRob2ROYW1lID09PSBNZXRob2ROYW1lcy5UcmFuc2ZlckFsbCB8fFxuICAgICAgbWV0aG9kTmFtZSA9PT0gTWV0aG9kTmFtZXMuUHJveHlcbiAgICApIHtcbiAgICAgIHJldHVybiB0aGlzLmdldFRyYW5zZmVyQnVpbGRlcigpO1xuICAgIH0gZWxzZSBpZiAobWV0aG9kTmFtZSA9PT0gTWV0aG9kTmFtZXMuQm9uZCB8fCBtZXRob2ROYW1lID09PSBNZXRob2ROYW1lcy5Cb25kRXh0cmEpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldFN0YWtpbmdCdWlsZGVyKCk7XG4gICAgfSBlbHNlIGlmIChtZXRob2ROYW1lID09PSBNZXRob2ROYW1lcy5BZGRQcm94eSkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0QWRkcmVzc0luaXRpYWxpemF0aW9uQnVpbGRlcigpO1xuICAgIH0gZWxzZSBpZiAobWV0aG9kTmFtZSA9PT0gTWV0aG9kTmFtZXMuUmVtb3ZlUHJveHkpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldFJlbW92ZVByb3h5QnVpbGRlcigpO1xuICAgIH0gZWxzZSBpZiAobWV0aG9kTmFtZSA9PT0gTWV0aG9kTmFtZXMuVW5ib25kKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRVbnN0YWtlQnVpbGRlcigpO1xuICAgIH0gZWxzZSBpZiAobWV0aG9kTmFtZSA9PT0gTWV0aG9kTmFtZXMuQ2hpbGwpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldFVubm9taW5hdGVCdWlsZGVyKCk7XG4gICAgfSBlbHNlIGlmIChtZXRob2ROYW1lID09PSBNZXRob2ROYW1lcy5XaXRoZHJhd1VuYm9uZGVkKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRXaXRoZHJhd1Vuc3Rha2VkQnVpbGRlcigpO1xuICAgIH0gZWxzZSBpZiAobWV0aG9kTmFtZSA9PT0gTWV0aG9kTmFtZXMuUGF5b3V0U3Rha2Vycykge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0Q2xhaW1CdWlsZGVyKCk7XG4gICAgfSBlbHNlIGlmIChtZXRob2ROYW1lID09PSBNZXRob2ROYW1lcy5CYXRjaCB8fCBtZXRob2ROYW1lID09PSBNZXRob2ROYW1lcy5CYXRjaEFsbCkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0QmF0Y2hUcmFuc2FjdGlvbkJ1aWxkZXIoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IE5vdFN1cHBvcnRlZCgnVHJhbnNhY3Rpb24gY2Fubm90IGJlIHBhcnNlZCBvciBoYXMgYW4gdW5zdXBwb3J0ZWQgdHJhbnNhY3Rpb24gdHlwZScpO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { BaseCoin as CoinConfig } from '@bitgo/statics';
|
|
2
|
+
import { ProxyType } from './iface';
|
|
3
|
+
import { NativeTransferBuilder } from './nativeTransferBuilder';
|
|
4
|
+
export declare class TransferBuilder extends NativeTransferBuilder {
|
|
5
|
+
protected _amount: string;
|
|
6
|
+
protected _to: string;
|
|
7
|
+
protected _owner: string;
|
|
8
|
+
protected _forceProxyType: ProxyType;
|
|
9
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=transferBuilder.d.ts.map
|