@bitgo/account-lib 2.20.0-rc.2 → 2.20.0-rc.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +195 -0
- package/dist/resources/README.md +8 -2
- package/dist/resources/trx/protobuf/tron.js +5 -1
- package/dist/src/coin/avaxc/index.js +3 -3
- package/dist/src/coin/avaxc/keyPair.d.ts +1 -2
- package/dist/src/coin/avaxc/keyPair.d.ts.map +1 -1
- package/dist/src/coin/avaxc/keyPair.js +25 -44
- package/dist/src/coin/avaxc/resources.js +3 -3
- package/dist/src/coin/avaxc/transactionBuilder.d.ts.map +1 -1
- package/dist/src/coin/avaxc/transactionBuilder.js +22 -41
- package/dist/src/coin/avaxc/transferBuilder.js +8 -28
- package/dist/src/coin/avaxc/utils.js +14 -54
- package/dist/src/coin/celo/index.js +3 -3
- package/dist/src/coin/celo/resources.js +3 -3
- package/dist/src/coin/celo/stakingBuilder.d.ts +1 -1
- package/dist/src/coin/celo/stakingBuilder.d.ts.map +1 -1
- package/dist/src/coin/celo/stakingBuilder.js +102 -104
- package/dist/src/coin/celo/stakingCall.js +8 -26
- package/dist/src/coin/celo/stakingUtils.d.ts +1 -1
- package/dist/src/coin/celo/stakingUtils.d.ts.map +1 -1
- package/dist/src/coin/celo/stakingUtils.js +33 -34
- package/dist/src/coin/celo/transaction.js +10 -30
- package/dist/src/coin/celo/transactionBuilder.d.ts +1 -1
- package/dist/src/coin/celo/transactionBuilder.d.ts.map +1 -1
- package/dist/src/coin/celo/transactionBuilder.js +96 -115
- package/dist/src/coin/celo/transferBuilder.js +8 -28
- package/dist/src/coin/celo/types.js +71 -125
- package/dist/src/coin/celo/utils.js +25 -25
- package/dist/src/coin/dot/addressInitializationBuilder.d.ts +1 -2
- package/dist/src/coin/dot/addressInitializationBuilder.d.ts.map +1 -1
- package/dist/src/coin/dot/addressInitializationBuilder.js +60 -83
- package/dist/src/coin/dot/batchTransactionBuilder.d.ts +1 -1
- package/dist/src/coin/dot/batchTransactionBuilder.d.ts.map +1 -1
- package/dist/src/coin/dot/batchTransactionBuilder.js +55 -78
- package/dist/src/coin/dot/claimBuilder.d.ts +1 -2
- package/dist/src/coin/dot/claimBuilder.d.ts.map +1 -1
- package/dist/src/coin/dot/claimBuilder.js +46 -68
- package/dist/src/coin/dot/errors.d.ts +1 -1
- package/dist/src/coin/dot/errors.d.ts.map +1 -1
- package/dist/src/coin/dot/errors.js +12 -33
- package/dist/src/coin/dot/iface.d.ts +1 -2
- package/dist/src/coin/dot/iface.d.ts.map +1 -1
- package/dist/src/coin/dot/iface.js +1 -1
- package/dist/src/coin/dot/index.js +3 -3
- package/dist/src/coin/dot/keyPair.d.ts +1 -2
- package/dist/src/coin/dot/keyPair.d.ts.map +1 -1
- package/dist/src/coin/dot/keyPair.js +34 -52
- package/dist/src/coin/dot/singletonRegistry.js +6 -9
- package/dist/src/coin/dot/stakingBuilder.d.ts +1 -2
- package/dist/src/coin/dot/stakingBuilder.d.ts.map +1 -1
- package/dist/src/coin/dot/stakingBuilder.js +49 -71
- package/dist/src/coin/dot/transaction.d.ts +1 -2
- package/dist/src/coin/dot/transaction.d.ts.map +1 -1
- package/dist/src/coin/dot/transaction.js +146 -162
- package/dist/src/coin/dot/transactionBuilder.d.ts +2 -3
- package/dist/src/coin/dot/transactionBuilder.d.ts.map +1 -1
- package/dist/src/coin/dot/transactionBuilder.js +132 -204
- package/dist/src/coin/dot/transactionBuilderFactory.d.ts +1 -1
- package/dist/src/coin/dot/transactionBuilderFactory.d.ts.map +1 -1
- package/dist/src/coin/dot/transactionBuilderFactory.js +46 -65
- package/dist/src/coin/dot/transferBuilder.d.ts +1 -2
- package/dist/src/coin/dot/transferBuilder.d.ts.map +1 -1
- package/dist/src/coin/dot/transferBuilder.js +62 -85
- package/dist/src/coin/dot/txnSchema.js +17 -15
- package/dist/src/coin/dot/unnominateBuilder.d.ts +1 -1
- package/dist/src/coin/dot/unnominateBuilder.d.ts.map +1 -1
- package/dist/src/coin/dot/unnominateBuilder.js +24 -46
- package/dist/src/coin/dot/unstakeBuilder.d.ts +1 -1
- package/dist/src/coin/dot/unstakeBuilder.d.ts.map +1 -1
- package/dist/src/coin/dot/unstakeBuilder.js +38 -60
- package/dist/src/coin/dot/utils.d.ts +1 -2
- package/dist/src/coin/dot/utils.d.ts.map +1 -1
- package/dist/src/coin/dot/utils.js +97 -101
- package/dist/src/coin/dot/withdrawUnstakedBuilder.d.ts +1 -1
- package/dist/src/coin/dot/withdrawUnstakedBuilder.d.ts.map +1 -1
- package/dist/src/coin/dot/withdrawUnstakedBuilder.js +38 -60
- package/dist/src/coin/etc/index.js +3 -3
- package/dist/src/coin/etc/resources.js +3 -3
- package/dist/src/coin/etc/transactionBuilder.d.ts.map +1 -1
- package/dist/src/coin/etc/transactionBuilder.js +22 -41
- package/dist/src/coin/etc/transferBuilder.js +8 -28
- package/dist/src/coin/etc/utils.js +10 -50
- package/dist/src/coin/eth/contractCall.js +8 -9
- package/dist/src/coin/eth/iface.d.ts +1 -1
- package/dist/src/coin/eth/iface.d.ts.map +1 -1
- package/dist/src/coin/eth/iface.js +1 -1
- package/dist/src/coin/eth/index.js +3 -3
- package/dist/src/coin/eth/keyPair.d.ts +1 -2
- package/dist/src/coin/eth/keyPair.d.ts.map +1 -1
- package/dist/src/coin/eth/keyPair.js +25 -44
- package/dist/src/coin/eth/transaction.d.ts +1 -2
- package/dist/src/coin/eth/transaction.d.ts.map +1 -1
- package/dist/src/coin/eth/transaction.js +48 -114
- package/dist/src/coin/eth/transactionBuilder.d.ts +1 -2
- package/dist/src/coin/eth/transactionBuilder.d.ts.map +1 -1
- package/dist/src/coin/eth/transactionBuilder.js +232 -303
- package/dist/src/coin/eth/transferBuilder/baseNFTTransferBuilder.js +37 -38
- package/dist/src/coin/eth/transferBuilder/transferBuilderERC1155.js +36 -53
- package/dist/src/coin/eth/transferBuilder/transferBuilderERC721.js +32 -49
- package/dist/src/coin/eth/transferBuilder.js +58 -59
- package/dist/src/coin/eth/types.js +52 -56
- package/dist/src/coin/eth/utils.d.ts +1 -1
- package/dist/src/coin/eth/utils.d.ts.map +1 -1
- package/dist/src/coin/eth/utils.js +100 -147
- package/dist/src/coin/eth/walletUtil.d.ts +2 -0
- package/dist/src/coin/eth/walletUtil.d.ts.map +1 -1
- package/dist/src/coin/eth/walletUtil.js +4 -2
- package/dist/src/coin/eth2/keyPair.d.ts +1 -2
- package/dist/src/coin/eth2/keyPair.d.ts.map +1 -1
- package/dist/src/coin/eth2/keyPair.js +19 -37
- package/dist/src/coin/hbar/index.js +2 -2
- package/dist/src/coin/hbar/keyPair.d.ts +1 -2
- package/dist/src/coin/hbar/keyPair.d.ts.map +1 -1
- package/dist/src/coin/hbar/keyPair.js +30 -49
- package/dist/src/coin/hbar/transaction.d.ts +1 -2
- package/dist/src/coin/hbar/transaction.d.ts.map +1 -1
- package/dist/src/coin/hbar/transaction.js +77 -146
- package/dist/src/coin/hbar/transactionBuilder.d.ts +1 -2
- package/dist/src/coin/hbar/transactionBuilder.d.ts.map +1 -1
- package/dist/src/coin/hbar/transactionBuilder.js +110 -193
- package/dist/src/coin/hbar/transactionBuilderFactory.d.ts +1 -1
- package/dist/src/coin/hbar/transactionBuilderFactory.d.ts.map +1 -1
- package/dist/src/coin/hbar/transactionBuilderFactory.js +27 -45
- package/dist/src/coin/hbar/transferBuilder.d.ts +1 -1
- package/dist/src/coin/hbar/transferBuilder.d.ts.map +1 -1
- package/dist/src/coin/hbar/transferBuilder.js +49 -113
- package/dist/src/coin/hbar/utils.d.ts +2 -15
- package/dist/src/coin/hbar/utils.d.ts.map +1 -1
- package/dist/src/coin/hbar/utils.js +38 -57
- package/dist/src/coin/hbar/walletInitializationBuilder.d.ts.map +1 -1
- package/dist/src/coin/hbar/walletInitializationBuilder.js +42 -107
- package/dist/src/coin/near/contractCallWrapper.js +46 -65
- package/dist/src/coin/near/errors.d.ts +1 -1
- package/dist/src/coin/near/errors.d.ts.map +1 -1
- package/dist/src/coin/near/errors.js +7 -25
- package/dist/src/coin/near/iface.d.ts +1 -2
- package/dist/src/coin/near/iface.d.ts.map +1 -1
- package/dist/src/coin/near/iface.js +1 -1
- package/dist/src/coin/near/index.d.ts +3 -0
- package/dist/src/coin/near/index.d.ts.map +1 -1
- package/dist/src/coin/near/index.js +9 -3
- package/dist/src/coin/near/keyPair.d.ts +1 -2
- package/dist/src/coin/near/keyPair.d.ts.map +1 -1
- package/dist/src/coin/near/keyPair.js +23 -40
- package/dist/src/coin/near/stakingActivateBuilder.d.ts +1 -1
- package/dist/src/coin/near/stakingActivateBuilder.d.ts.map +1 -1
- package/dist/src/coin/near/stakingActivateBuilder.js +36 -105
- package/dist/src/coin/near/stakingDeactivateBuilder.d.ts +1 -1
- package/dist/src/coin/near/stakingDeactivateBuilder.d.ts.map +1 -1
- package/dist/src/coin/near/stakingDeactivateBuilder.js +36 -105
- package/dist/src/coin/near/stakingWithdrawBuilder.d.ts +1 -1
- package/dist/src/coin/near/stakingWithdrawBuilder.d.ts.map +1 -1
- package/dist/src/coin/near/stakingWithdrawBuilder.js +36 -105
- package/dist/src/coin/near/transaction.d.ts +1 -2
- package/dist/src/coin/near/transaction.d.ts.map +1 -1
- package/dist/src/coin/near/transaction.js +125 -154
- package/dist/src/coin/near/transactionBuilder.d.ts +1 -2
- package/dist/src/coin/near/transactionBuilder.d.ts.map +1 -1
- package/dist/src/coin/near/transactionBuilder.js +81 -144
- package/dist/src/coin/near/transactionBuilderFactory.d.ts +1 -1
- package/dist/src/coin/near/transactionBuilderFactory.d.ts.map +1 -1
- package/dist/src/coin/near/transactionBuilderFactory.js +33 -51
- package/dist/src/coin/near/transferBuilder.d.ts +1 -1
- package/dist/src/coin/near/transferBuilder.d.ts.map +1 -1
- package/dist/src/coin/near/transferBuilder.js +27 -91
- package/dist/src/coin/near/utils.d.ts +1 -1
- package/dist/src/coin/near/utils.d.ts.map +1 -1
- package/dist/src/coin/near/utils.js +35 -45
- package/dist/src/coin/near/walletInitializationBuilder.d.ts +1 -1
- package/dist/src/coin/near/walletInitializationBuilder.d.ts.map +1 -1
- package/dist/src/coin/near/walletInitializationBuilder.js +13 -70
- package/dist/src/coin/polygon/index.d.ts +8 -0
- package/dist/src/coin/polygon/index.d.ts.map +1 -0
- package/dist/src/coin/polygon/index.js +35 -0
- package/dist/src/coin/polygon/resources.d.ts +10 -0
- package/dist/src/coin/polygon/resources.d.ts.map +1 -0
- package/dist/src/coin/polygon/resources.js +25 -0
- package/dist/src/coin/polygon/transactionBuilder.d.ts +17 -0
- package/dist/src/coin/polygon/transactionBuilder.d.ts.map +1 -0
- package/dist/src/coin/polygon/transactionBuilder.js +44 -0
- package/dist/src/coin/polygon/transferBuilder.d.ts +19 -0
- package/dist/src/coin/polygon/transferBuilder.d.ts.map +1 -0
- package/dist/src/coin/polygon/transferBuilder.js +27 -0
- package/dist/src/coin/polygon/utils.d.ts +18 -0
- package/dist/src/coin/polygon/utils.d.ts.map +1 -0
- package/dist/src/coin/polygon/utils.js +42 -0
- package/dist/src/coin/polygon/walletUtil.d.ts +48 -0
- package/dist/src/coin/polygon/walletUtil.d.ts.map +1 -0
- package/dist/src/coin/polygon/walletUtil.js +632 -0
- package/dist/src/coin/rbtc/index.js +3 -3
- package/dist/src/coin/rbtc/resources.js +3 -3
- package/dist/src/coin/rbtc/transactionBuilder.d.ts.map +1 -1
- package/dist/src/coin/rbtc/transactionBuilder.js +21 -40
- package/dist/src/coin/rbtc/transferBuilder.js +8 -28
- package/dist/src/coin/rbtc/utils.js +10 -50
- package/dist/src/coin/sol/ataInitializationBuilder.d.ts +1 -1
- package/dist/src/coin/sol/ataInitializationBuilder.d.ts.map +1 -1
- package/dist/src/coin/sol/ataInitializationBuilder.js +52 -123
- package/dist/src/coin/sol/ataInitializationTransaction.d.ts.map +1 -1
- package/dist/src/coin/sol/ataInitializationTransaction.js +34 -57
- package/dist/src/coin/sol/iface.d.ts +1 -1
- package/dist/src/coin/sol/iface.d.ts.map +1 -1
- package/dist/src/coin/sol/iface.js +1 -1
- package/dist/src/coin/sol/index.js +3 -3
- package/dist/src/coin/sol/instructionParamsFactory.d.ts +1 -1
- package/dist/src/coin/sol/instructionParamsFactory.d.ts.map +1 -1
- package/dist/src/coin/sol/instructionParamsFactory.js +62 -67
- package/dist/src/coin/sol/keyPair.d.ts +1 -2
- package/dist/src/coin/sol/keyPair.d.ts.map +1 -1
- package/dist/src/coin/sol/keyPair.js +24 -42
- package/dist/src/coin/sol/solInstructionFactory.js +33 -33
- package/dist/src/coin/sol/stakingActivateBuilder.d.ts +1 -1
- package/dist/src/coin/sol/stakingActivateBuilder.d.ts.map +1 -1
- package/dist/src/coin/sol/stakingActivateBuilder.js +45 -113
- package/dist/src/coin/sol/stakingDeactivateBuilder.d.ts +1 -1
- package/dist/src/coin/sol/stakingDeactivateBuilder.d.ts.map +1 -1
- package/dist/src/coin/sol/stakingDeactivateBuilder.js +36 -104
- package/dist/src/coin/sol/stakingWithdrawBuilder.d.ts +1 -1
- package/dist/src/coin/sol/stakingWithdrawBuilder.d.ts.map +1 -1
- package/dist/src/coin/sol/stakingWithdrawBuilder.js +41 -109
- package/dist/src/coin/sol/tokenEncodeDecode.js +46 -75
- package/dist/src/coin/sol/tokenTransferBuilder.d.ts +1 -1
- package/dist/src/coin/sol/tokenTransferBuilder.d.ts.map +1 -1
- package/dist/src/coin/sol/tokenTransferBuilder.js +42 -115
- package/dist/src/coin/sol/transaction.d.ts +1 -2
- package/dist/src/coin/sol/transaction.d.ts.map +1 -1
- package/dist/src/coin/sol/transaction.js +130 -221
- package/dist/src/coin/sol/transactionBuilder.d.ts +1 -2
- package/dist/src/coin/sol/transactionBuilder.d.ts.map +1 -1
- package/dist/src/coin/sol/transactionBuilder.js +104 -171
- package/dist/src/coin/sol/transactionBuilderFactory.d.ts +1 -1
- package/dist/src/coin/sol/transactionBuilderFactory.d.ts.map +1 -1
- package/dist/src/coin/sol/transactionBuilderFactory.js +46 -64
- package/dist/src/coin/sol/transferBuilder.d.ts +1 -1
- package/dist/src/coin/sol/transferBuilder.d.ts.map +1 -1
- package/dist/src/coin/sol/transferBuilder.js +37 -108
- package/dist/src/coin/sol/utils.d.ts +1 -1
- package/dist/src/coin/sol/utils.d.ts.map +1 -1
- package/dist/src/coin/sol/utils.js +49 -117
- package/dist/src/coin/sol/walletInitializationBuilder.d.ts +1 -1
- package/dist/src/coin/sol/walletInitializationBuilder.d.ts.map +1 -1
- package/dist/src/coin/sol/walletInitializationBuilder.js +39 -107
- package/dist/src/coin/stx/abstractContractBuilder.d.ts.map +1 -1
- package/dist/src/coin/stx/abstractContractBuilder.js +34 -104
- package/dist/src/coin/stx/contractBuilder.js +38 -57
- package/dist/src/coin/stx/index.js +2 -2
- package/dist/src/coin/stx/keyPair.d.ts +1 -2
- package/dist/src/coin/stx/keyPair.d.ts.map +1 -1
- package/dist/src/coin/stx/keyPair.js +39 -62
- package/dist/src/coin/stx/sendmanyBuilder.js +43 -108
- package/dist/src/coin/stx/transaction.d.ts +1 -2
- package/dist/src/coin/stx/transaction.d.ts.map +1 -1
- package/dist/src/coin/stx/transaction.js +102 -183
- package/dist/src/coin/stx/transactionBuilder.d.ts +1 -2
- package/dist/src/coin/stx/transactionBuilder.d.ts.map +1 -1
- package/dist/src/coin/stx/transactionBuilder.js +121 -218
- package/dist/src/coin/stx/transactionBuilderFactory.d.ts +1 -1
- package/dist/src/coin/stx/transactionBuilderFactory.d.ts.map +1 -1
- package/dist/src/coin/stx/transactionBuilderFactory.js +36 -54
- package/dist/src/coin/stx/transferBuilder.d.ts.map +1 -1
- package/dist/src/coin/stx/transferBuilder.js +41 -111
- package/dist/src/coin/stx/utils.d.ts.map +1 -1
- package/dist/src/coin/stx/utils.js +58 -65
- package/dist/src/coin/trx/address.d.ts +1 -1
- package/dist/src/coin/trx/address.d.ts.map +1 -1
- package/dist/src/coin/trx/address.js +3 -6
- package/dist/src/coin/trx/contractCallBuilder.d.ts +1 -1
- package/dist/src/coin/trx/contractCallBuilder.d.ts.map +1 -1
- package/dist/src/coin/trx/contractCallBuilder.js +100 -160
- package/dist/src/coin/trx/iface.d.ts +1 -1
- package/dist/src/coin/trx/iface.d.ts.map +1 -1
- package/dist/src/coin/trx/iface.js +1 -1
- package/dist/src/coin/trx/index.js +4 -4
- package/dist/src/coin/trx/keyPair.d.ts +1 -3
- package/dist/src/coin/trx/keyPair.d.ts.map +1 -1
- package/dist/src/coin/trx/keyPair.js +37 -57
- package/dist/src/coin/trx/transaction.d.ts +1 -3
- package/dist/src/coin/trx/transaction.d.ts.map +1 -1
- package/dist/src/coin/trx/transaction.js +84 -124
- package/dist/src/coin/trx/transactionBuilder.d.ts +1 -2
- package/dist/src/coin/trx/transactionBuilder.d.ts.map +1 -1
- package/dist/src/coin/trx/transactionBuilder.js +72 -134
- package/dist/src/coin/trx/utils.js +57 -59
- package/dist/src/coin/trx/wrappedBuilder.d.ts +1 -2
- package/dist/src/coin/trx/wrappedBuilder.d.ts.map +1 -1
- package/dist/src/coin/trx/wrappedBuilder.js +43 -101
- package/dist/src/coin/xrp/index.js +2 -2
- package/dist/src/coin/xrp/keyPair.d.ts +1 -2
- package/dist/src/coin/xrp/keyPair.d.ts.map +1 -1
- package/dist/src/coin/xrp/keyPair.js +6 -23
- package/dist/src/coin/xrp/transaction.d.ts +1 -2
- package/dist/src/coin/xrp/transaction.d.ts.map +1 -1
- package/dist/src/coin/xrp/transaction.js +13 -34
- package/dist/src/coin/xrp/transactionBuilder.d.ts +1 -2
- package/dist/src/coin/xrp/transactionBuilder.d.ts.map +1 -1
- package/dist/src/coin/xrp/transactionBuilder.js +29 -51
- package/dist/src/coin/xrp/transactionBuilderFactory.d.ts +1 -1
- package/dist/src/coin/xrp/transactionBuilderFactory.d.ts.map +1 -1
- package/dist/src/coin/xrp/transactionBuilderFactory.js +17 -35
- package/dist/src/coin/xrp/transferBuilder.d.ts +1 -1
- package/dist/src/coin/xrp/transferBuilder.d.ts.map +1 -1
- package/dist/src/coin/xrp/transferBuilder.js +16 -73
- package/dist/src/coin/xrp/utils.d.ts +1 -1
- package/dist/src/coin/xrp/utils.d.ts.map +1 -1
- package/dist/src/coin/xrp/utils.js +22 -25
- package/dist/src/coin/xrp/walletInitializationBuilder.d.ts +1 -1
- package/dist/src/coin/xrp/walletInitializationBuilder.d.ts.map +1 -1
- package/dist/src/coin/xrp/walletInitializationBuilder.js +16 -73
- package/dist/src/coin/xtz/address.d.ts +1 -1
- package/dist/src/coin/xtz/address.d.ts.map +1 -1
- package/dist/src/coin/xtz/address.js +3 -6
- package/dist/src/coin/xtz/iface.d.ts +1 -1
- package/dist/src/coin/xtz/iface.d.ts.map +1 -1
- package/dist/src/coin/xtz/iface.js +1 -1
- package/dist/src/coin/xtz/index.js +4 -4
- package/dist/src/coin/xtz/keyPair.d.ts +1 -2
- package/dist/src/coin/xtz/keyPair.d.ts.map +1 -1
- package/dist/src/coin/xtz/keyPair.js +39 -59
- package/dist/src/coin/xtz/multisigUtils.js +64 -77
- package/dist/src/coin/xtz/transaction.d.ts +1 -2
- package/dist/src/coin/xtz/transaction.d.ts.map +1 -1
- package/dist/src/coin/xtz/transaction.js +175 -345
- package/dist/src/coin/xtz/transactionBuilder.d.ts +1 -2
- package/dist/src/coin/xtz/transactionBuilder.d.ts.map +1 -1
- package/dist/src/coin/xtz/transactionBuilder.js +212 -347
- package/dist/src/coin/xtz/transferBuilder.js +25 -28
- package/dist/src/coin/xtz/utils.d.ts.map +1 -1
- package/dist/src/coin/xtz/utils.js +54 -125
- package/dist/src/index.d.ts +7 -11
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +38 -44
- package/dist/src/keyPair/index.d.ts +1 -2
- package/dist/src/keyPair/index.d.ts.map +1 -1
- package/dist/src/keyPair/index.js +9 -9
- package/dist/src/utils/index.d.ts +1 -1
- package/dist/src/utils/index.d.ts.map +1 -1
- package/dist/src/utils/index.js +9 -9
- package/dist/tsconfig.tsbuildinfo +21131 -16701
- package/package.json +21 -43
- package/resources/README.md +8 -2
- package/resources/trx/protobuf/tron.js +5 -1
- package/dist/browser/bitgo-account-lib.js +0 -2
- package/dist/browser/bitgo-account-lib.js.LICENSE.txt +0 -335
- package/dist/src/coin/algo/assetTransferBuilder.d.ts +0 -43
- package/dist/src/coin/algo/assetTransferBuilder.d.ts.map +0 -1
- package/dist/src/coin/algo/assetTransferBuilder.js +0 -127
- package/dist/src/coin/algo/errors.d.ts +0 -11
- package/dist/src/coin/algo/errors.d.ts.map +0 -1
- package/dist/src/coin/algo/errors.js +0 -51
- package/dist/src/coin/algo/ifaces.d.ts +0 -46
- package/dist/src/coin/algo/ifaces.d.ts.map +0 -1
- package/dist/src/coin/algo/ifaces.js +0 -3
- package/dist/src/coin/algo/index.d.ts +0 -13
- package/dist/src/coin/algo/index.d.ts.map +0 -1
- package/dist/src/coin/algo/index.js +0 -47
- package/dist/src/coin/algo/keyPair.d.ts +0 -26
- package/dist/src/coin/algo/keyPair.d.ts.map +0 -1
- package/dist/src/coin/algo/keyPair.js +0 -95
- package/dist/src/coin/algo/keyRegistrationBuilder.d.ts +0 -104
- package/dist/src/coin/algo/keyRegistrationBuilder.d.ts.map +0 -1
- package/dist/src/coin/algo/keyRegistrationBuilder.js +0 -262
- package/dist/src/coin/algo/seedEncoding.d.ts +0 -25
- package/dist/src/coin/algo/seedEncoding.d.ts.map +0 -1
- package/dist/src/coin/algo/seedEncoding.js +0 -100
- package/dist/src/coin/algo/transaction.d.ts +0 -76
- package/dist/src/coin/algo/transaction.d.ts.map +0 -1
- package/dist/src/coin/algo/transaction.js +0 -287
- package/dist/src/coin/algo/transactionBuilder.d.ts +0 -205
- package/dist/src/coin/algo/transactionBuilder.d.ts.map +0 -1
- package/dist/src/coin/algo/transactionBuilder.js +0 -445
- package/dist/src/coin/algo/transactionBuilderFactory.d.ts +0 -16
- package/dist/src/coin/algo/transactionBuilderFactory.d.ts.map +0 -1
- package/dist/src/coin/algo/transactionBuilderFactory.js +0 -70
- package/dist/src/coin/algo/transferBuilder.d.ts +0 -41
- package/dist/src/coin/algo/transferBuilder.d.ts.map +0 -1
- package/dist/src/coin/algo/transferBuilder.js +0 -111
- package/dist/src/coin/algo/txnSchema.d.ts +0 -7
- package/dist/src/coin/algo/txnSchema.d.ts.map +0 -1
- package/dist/src/coin/algo/txnSchema.js +0 -68
- package/dist/src/coin/algo/utils.d.ts +0 -249
- package/dist/src/coin/algo/utils.d.ts.map +0 -1
- package/dist/src/coin/algo/utils.js +0 -544
- package/dist/src/coin/baseCoin/baseKeyPair.d.ts +0 -27
- package/dist/src/coin/baseCoin/baseKeyPair.d.ts.map +0 -1
- package/dist/src/coin/baseCoin/baseKeyPair.js +0 -3
- package/dist/src/coin/baseCoin/baseTransaction.d.ts +0 -71
- package/dist/src/coin/baseCoin/baseTransaction.d.ts.map +0 -1
- package/dist/src/coin/baseCoin/baseTransaction.js +0 -94
- package/dist/src/coin/baseCoin/baseTransactionBuilder.d.ts +0 -128
- package/dist/src/coin/baseCoin/baseTransactionBuilder.d.ts.map +0 -1
- package/dist/src/coin/baseCoin/baseTransactionBuilder.js +0 -179
- package/dist/src/coin/baseCoin/baseTransactionBuilderFactory.d.ts +0 -30
- package/dist/src/coin/baseCoin/baseTransactionBuilderFactory.d.ts.map +0 -1
- package/dist/src/coin/baseCoin/baseTransactionBuilderFactory.js +0 -20
- package/dist/src/coin/baseCoin/baseUtils.d.ts +0 -45
- package/dist/src/coin/baseCoin/baseUtils.d.ts.map +0 -1
- package/dist/src/coin/baseCoin/baseUtils.js +0 -3
- package/dist/src/coin/baseCoin/blsKeyPair.d.ts +0 -75
- package/dist/src/coin/baseCoin/blsKeyPair.d.ts.map +0 -1
- package/dist/src/coin/baseCoin/blsKeyPair.js +0 -232
- package/dist/src/coin/baseCoin/ed25519KeyPair.d.ts +0 -50
- package/dist/src/coin/baseCoin/ed25519KeyPair.d.ts.map +0 -1
- package/dist/src/coin/baseCoin/ed25519KeyPair.js +0 -141
- package/dist/src/coin/baseCoin/enum.d.ts +0 -43
- package/dist/src/coin/baseCoin/enum.d.ts.map +0 -1
- package/dist/src/coin/baseCoin/enum.js +0 -70
- package/dist/src/coin/baseCoin/errors.d.ts +0 -65
- package/dist/src/coin/baseCoin/errors.d.ts.map +0 -1
- package/dist/src/coin/baseCoin/errors.js +0 -156
- package/dist/src/coin/baseCoin/iface.d.ts +0 -162
- package/dist/src/coin/baseCoin/iface.d.ts.map +0 -1
- package/dist/src/coin/baseCoin/iface.js +0 -38
- package/dist/src/coin/baseCoin/index.d.ts +0 -12
- package/dist/src/coin/baseCoin/index.d.ts.map +0 -1
- package/dist/src/coin/baseCoin/index.js +0 -41
- package/dist/src/coin/baseCoin/secp256k1ExtendedKeyPair.d.ts +0 -55
- package/dist/src/coin/baseCoin/secp256k1ExtendedKeyPair.d.ts.map +0 -1
- package/dist/src/coin/baseCoin/secp256k1ExtendedKeyPair.js +0 -124
- package/dist/src/coin/cspr/constants.d.ts +0 -19
- package/dist/src/coin/cspr/constants.d.ts.map +0 -1
- package/dist/src/coin/cspr/constants.js +0 -28
- package/dist/src/coin/cspr/delegateBuilder.d.ts +0 -49
- package/dist/src/coin/cspr/delegateBuilder.d.ts.map +0 -1
- package/dist/src/coin/cspr/delegateBuilder.js +0 -175
- package/dist/src/coin/cspr/ifaces.d.ts +0 -69
- package/dist/src/coin/cspr/ifaces.d.ts.map +0 -1
- package/dist/src/coin/cspr/ifaces.js +0 -3
- package/dist/src/coin/cspr/index.d.ts +0 -5
- package/dist/src/coin/cspr/index.d.ts.map +0 -1
- package/dist/src/coin/cspr/index.js +0 -29
- package/dist/src/coin/cspr/keyPair.d.ts +0 -19
- package/dist/src/coin/cspr/keyPair.d.ts.map +0 -1
- package/dist/src/coin/cspr/keyPair.js +0 -94
- package/dist/src/coin/cspr/transaction.d.ts +0 -56
- package/dist/src/coin/cspr/transaction.d.ts.map +0 -1
- package/dist/src/coin/cspr/transaction.js +0 -251
- package/dist/src/coin/cspr/transactionBuilder.d.ts +0 -125
- package/dist/src/coin/cspr/transactionBuilder.d.ts.map +0 -1
- package/dist/src/coin/cspr/transactionBuilder.js +0 -383
- package/dist/src/coin/cspr/transactionBuilderFactory.d.ts +0 -46
- package/dist/src/coin/cspr/transactionBuilderFactory.d.ts.map +0 -1
- package/dist/src/coin/cspr/transactionBuilderFactory.js +0 -116
- package/dist/src/coin/cspr/transferBuilder.d.ts +0 -39
- package/dist/src/coin/cspr/transferBuilder.d.ts.map +0 -1
- package/dist/src/coin/cspr/transferBuilder.js +0 -169
- package/dist/src/coin/cspr/undelegateBuilder.d.ts +0 -49
- package/dist/src/coin/cspr/undelegateBuilder.d.ts.map +0 -1
- package/dist/src/coin/cspr/undelegateBuilder.js +0 -175
- package/dist/src/coin/cspr/utils.d.ts +0 -189
- package/dist/src/coin/cspr/utils.d.ts.map +0 -1
- package/dist/src/coin/cspr/utils.js +0 -483
- package/dist/src/coin/cspr/walletInitializationBuilder.d.ts +0 -27
- package/dist/src/coin/cspr/walletInitializationBuilder.d.ts.map +0 -1
- package/dist/src/coin/cspr/walletInitializationBuilder.js +0 -160
- package/dist/src/mpc/curves/baseCurve.d.ts +0 -18
- package/dist/src/mpc/curves/baseCurve.d.ts.map +0 -1
- package/dist/src/mpc/curves/baseCurve.js +0 -6
- package/dist/src/mpc/curves/ed25519.d.ts +0 -17
- package/dist/src/mpc/curves/ed25519.d.ts.map +0 -1
- package/dist/src/mpc/curves/ed25519.js +0 -96
- package/dist/src/mpc/curves/index.d.ts +0 -5
- package/dist/src/mpc/curves/index.d.ts.map +0 -1
- package/dist/src/mpc/curves/index.js +0 -6
- package/dist/src/mpc/hdTree.d.ts +0 -24
- package/dist/src/mpc/hdTree.d.ts.map +0 -1
- package/dist/src/mpc/hdTree.js +0 -143
- package/dist/src/mpc/shamir.d.ts +0 -26
- package/dist/src/mpc/shamir.d.ts.map +0 -1
- package/dist/src/mpc/shamir.js +0 -87
- package/dist/src/mpc/tss.d.ts +0 -98
- package/dist/src/mpc/tss.d.ts.map +0 -1
- package/dist/src/mpc/tss.js +0 -346
- package/dist/src/mpc/util.d.ts +0 -7
- package/dist/src/mpc/util.d.ts.map +0 -1
- package/dist/src/mpc/util.js +0 -38
- package/dist/src/utils/crypto.d.ts +0 -99
- package/dist/src/utils/crypto.d.ts.map +0 -1
- package/dist/src/utils/crypto.js +0 -260
- package/dist/src/utils/ed25519KeyDeriver.d.ts +0 -49
- package/dist/src/utils/ed25519KeyDeriver.d.ts.map +0 -1
- package/dist/src/utils/ed25519KeyDeriver.js +0 -92
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __extends = (this && this.__extends) || (function () {
|
|
3
|
-
var extendStatics = function (d, b) {
|
|
4
|
-
extendStatics = Object.setPrototypeOf ||
|
|
5
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
-
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
-
return extendStatics(d, b);
|
|
8
|
-
};
|
|
9
|
-
return function (d, b) {
|
|
10
|
-
if (typeof b !== "function" && b !== null)
|
|
11
|
-
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
-
extendStatics(d, b);
|
|
13
|
-
function __() { this.constructor = d; }
|
|
14
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
-
};
|
|
16
|
-
})();
|
|
17
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
|
-
if (k2 === undefined) k2 = k;
|
|
19
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
20
|
-
}) : (function(o, m, k, k2) {
|
|
21
|
-
if (k2 === undefined) k2 = k;
|
|
22
|
-
o[k2] = m[k];
|
|
23
|
-
}));
|
|
24
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
25
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
26
|
-
}) : function(o, v) {
|
|
27
|
-
o["default"] = v;
|
|
28
|
-
});
|
|
29
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
30
|
-
if (mod && mod.__esModule) return mod;
|
|
31
|
-
var result = {};
|
|
32
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
33
|
-
__setModuleDefault(result, mod);
|
|
34
|
-
return result;
|
|
35
|
-
};
|
|
36
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
37
|
-
exports.KeyPair = void 0;
|
|
38
|
-
var crypto_1 = require("crypto");
|
|
39
|
-
var bip32 = __importStar(require("bip32"));
|
|
40
|
-
var iface_1 = require("../baseCoin/iface");
|
|
41
|
-
var secp256k1ExtendedKeyPair_1 = require("../baseCoin/secp256k1ExtendedKeyPair");
|
|
42
|
-
var constants_1 = require("./constants");
|
|
43
|
-
var DEFAULT_SEED_SIZE_BYTES = 16;
|
|
44
|
-
var KeyPair = /** @class */ (function (_super) {
|
|
45
|
-
__extends(KeyPair, _super);
|
|
46
|
-
/**
|
|
47
|
-
* Public constructor. By default, creates a key pair with a random master seed.
|
|
48
|
-
*
|
|
49
|
-
* @param { KeyPairOptions } source Either a master seed, a private key, or a public key
|
|
50
|
-
*/
|
|
51
|
-
function KeyPair(source) {
|
|
52
|
-
var _this = _super.call(this, source) || this;
|
|
53
|
-
if (!source) {
|
|
54
|
-
var seed = crypto_1.randomBytes(DEFAULT_SEED_SIZE_BYTES);
|
|
55
|
-
_this.hdNode = bip32.fromSeed(seed);
|
|
56
|
-
}
|
|
57
|
-
else if (iface_1.isSeed(source)) {
|
|
58
|
-
_this.hdNode = bip32.fromSeed(source.seed);
|
|
59
|
-
}
|
|
60
|
-
else if (iface_1.isPrivateKey(source)) {
|
|
61
|
-
_this.recordKeysFromPrivateKey(source.prv);
|
|
62
|
-
}
|
|
63
|
-
else if (iface_1.isPublicKey(source)) {
|
|
64
|
-
_this.recordKeysFromPublicKey(source.pub);
|
|
65
|
-
}
|
|
66
|
-
else {
|
|
67
|
-
throw new Error('Invalid key pair options');
|
|
68
|
-
}
|
|
69
|
-
if (_this.hdNode) {
|
|
70
|
-
_this.keyPair = secp256k1ExtendedKeyPair_1.Secp256k1ExtendedKeyPair.toKeyPair(_this.hdNode);
|
|
71
|
-
}
|
|
72
|
-
return _this;
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* Default keys format is a pair of Uint8Array keys
|
|
76
|
-
*
|
|
77
|
-
* @returns { DefaultKeys } The keys in the defined format
|
|
78
|
-
*/
|
|
79
|
-
KeyPair.prototype.getKeys = function () {
|
|
80
|
-
var _a;
|
|
81
|
-
return {
|
|
82
|
-
pub: this.getPublicKey({ compressed: true }).toString('hex'),
|
|
83
|
-
prv: (_a = this.getPrivateKey()) === null || _a === void 0 ? void 0 : _a.toString('hex'),
|
|
84
|
-
};
|
|
85
|
-
};
|
|
86
|
-
/** @inheritdoc */
|
|
87
|
-
KeyPair.prototype.getAddress = function () {
|
|
88
|
-
var keys = this.getKeys();
|
|
89
|
-
return constants_1.SECP256K1_PREFIX + keys.pub;
|
|
90
|
-
};
|
|
91
|
-
return KeyPair;
|
|
92
|
-
}(secp256k1ExtendedKeyPair_1.Secp256k1ExtendedKeyPair));
|
|
93
|
-
exports.KeyPair = KeyPair;
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5UGFpci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2luL2NzcHIva2V5UGFpci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsaUNBQXFDO0FBQ3JDLDJDQUErQjtBQUMvQiwyQ0FBbUc7QUFDbkcsaUZBQWdGO0FBQ2hGLHlDQUErQztBQUMvQyxJQUFNLHVCQUF1QixHQUFHLEVBQUUsQ0FBQztBQUVuQztJQUE2QiwyQkFBd0I7SUFDbkQ7Ozs7T0FJRztJQUNILGlCQUFZLE1BQXVCO1FBQW5DLFlBQ0Usa0JBQU0sTUFBTSxDQUFDLFNBaUJkO1FBaEJDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDWCxJQUFNLElBQUksR0FBRyxvQkFBVyxDQUFDLHVCQUF1QixDQUFDLENBQUM7WUFDbEQsS0FBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3BDO2FBQU0sSUFBSSxjQUFNLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDekIsS0FBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUMzQzthQUFNLElBQUksb0JBQVksQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUMvQixLQUFJLENBQUMsd0JBQXdCLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQzNDO2FBQU0sSUFBSSxtQkFBVyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQzlCLEtBQUksQ0FBQyx1QkFBdUIsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDMUM7YUFBTTtZQUNMLE1BQU0sSUFBSSxLQUFLLENBQUMsMEJBQTBCLENBQUMsQ0FBQztTQUM3QztRQUVELElBQUksS0FBSSxDQUFDLE1BQU0sRUFBRTtZQUNmLEtBQUksQ0FBQyxPQUFPLEdBQUcsbURBQXdCLENBQUMsU0FBUyxDQUFDLEtBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUNoRTs7SUFDSCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILHlCQUFPLEdBQVA7O1FBQ0UsT0FBTztZQUNMLEdBQUcsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztZQUM1RCxHQUFHLEVBQUUsTUFBQSxJQUFJLENBQUMsYUFBYSxFQUFFLDBDQUFFLFFBQVEsQ0FBQyxLQUFLLENBQUM7U0FDM0MsQ0FBQztJQUNKLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsNEJBQVUsR0FBVjtRQUNFLElBQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUM1QixPQUFPLDRCQUFnQixHQUFHLElBQUksQ0FBQyxHQUFHLENBQUM7SUFDckMsQ0FBQztJQUNILGNBQUM7QUFBRCxDQUFDLEFBM0NELENBQTZCLG1EQUF3QixHQTJDcEQ7QUEzQ1ksMEJBQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByYW5kb21CeXRlcyB9IGZyb20gJ2NyeXB0byc7XG5pbXBvcnQgKiBhcyBiaXAzMiBmcm9tICdiaXAzMic7XG5pbXBvcnQgeyBLZXlQYWlyT3B0aW9ucywgaXNQcml2YXRlS2V5LCBpc1B1YmxpY0tleSwgaXNTZWVkLCBEZWZhdWx0S2V5cyB9IGZyb20gJy4uL2Jhc2VDb2luL2lmYWNlJztcbmltcG9ydCB7IFNlY3AyNTZrMUV4dGVuZGVkS2V5UGFpciB9IGZyb20gJy4uL2Jhc2VDb2luL3NlY3AyNTZrMUV4dGVuZGVkS2V5UGFpcic7XG5pbXBvcnQgeyBTRUNQMjU2SzFfUFJFRklYIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuY29uc3QgREVGQVVMVF9TRUVEX1NJWkVfQllURVMgPSAxNjtcblxuZXhwb3J0IGNsYXNzIEtleVBhaXIgZXh0ZW5kcyBTZWNwMjU2azFFeHRlbmRlZEtleVBhaXIge1xuICAvKipcbiAgICogUHVibGljIGNvbnN0cnVjdG9yLiBCeSBkZWZhdWx0LCBjcmVhdGVzIGEga2V5IHBhaXIgd2l0aCBhIHJhbmRvbSBtYXN0ZXIgc2VlZC5cbiAgICpcbiAgICogQHBhcmFtIHsgS2V5UGFpck9wdGlvbnMgfSBzb3VyY2UgRWl0aGVyIGEgbWFzdGVyIHNlZWQsIGEgcHJpdmF0ZSBrZXksIG9yIGEgcHVibGljIGtleVxuICAgKi9cbiAgY29uc3RydWN0b3Ioc291cmNlPzogS2V5UGFpck9wdGlvbnMpIHtcbiAgICBzdXBlcihzb3VyY2UpO1xuICAgIGlmICghc291cmNlKSB7XG4gICAgICBjb25zdCBzZWVkID0gcmFuZG9tQnl0ZXMoREVGQVVMVF9TRUVEX1NJWkVfQllURVMpO1xuICAgICAgdGhpcy5oZE5vZGUgPSBiaXAzMi5mcm9tU2VlZChzZWVkKTtcbiAgICB9IGVsc2UgaWYgKGlzU2VlZChzb3VyY2UpKSB7XG4gICAgICB0aGlzLmhkTm9kZSA9IGJpcDMyLmZyb21TZWVkKHNvdXJjZS5zZWVkKTtcbiAgICB9IGVsc2UgaWYgKGlzUHJpdmF0ZUtleShzb3VyY2UpKSB7XG4gICAgICB0aGlzLnJlY29yZEtleXNGcm9tUHJpdmF0ZUtleShzb3VyY2UucHJ2KTtcbiAgICB9IGVsc2UgaWYgKGlzUHVibGljS2V5KHNvdXJjZSkpIHtcbiAgICAgIHRoaXMucmVjb3JkS2V5c0Zyb21QdWJsaWNLZXkoc291cmNlLnB1Yik7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBrZXkgcGFpciBvcHRpb25zJyk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaGROb2RlKSB7XG4gICAgICB0aGlzLmtleVBhaXIgPSBTZWNwMjU2azFFeHRlbmRlZEtleVBhaXIudG9LZXlQYWlyKHRoaXMuaGROb2RlKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogRGVmYXVsdCBrZXlzIGZvcm1hdCBpcyBhIHBhaXIgb2YgVWludDhBcnJheSBrZXlzXG4gICAqXG4gICAqIEByZXR1cm5zIHsgRGVmYXVsdEtleXMgfSBUaGUga2V5cyBpbiB0aGUgZGVmaW5lZCBmb3JtYXRcbiAgICovXG4gIGdldEtleXMoKTogRGVmYXVsdEtleXMge1xuICAgIHJldHVybiB7XG4gICAgICBwdWI6IHRoaXMuZ2V0UHVibGljS2V5KHsgY29tcHJlc3NlZDogdHJ1ZSB9KS50b1N0cmluZygnaGV4JyksXG4gICAgICBwcnY6IHRoaXMuZ2V0UHJpdmF0ZUtleSgpPy50b1N0cmluZygnaGV4JyksXG4gICAgfTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXRBZGRyZXNzKCk6IHN0cmluZyB7XG4gICAgY29uc3Qga2V5cyA9IHRoaXMuZ2V0S2V5cygpO1xuICAgIHJldHVybiBTRUNQMjU2SzFfUFJFRklYICsga2V5cy5wdWI7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import { BaseCoin as CoinConfig } from '@bitgo/statics';
|
|
2
|
-
import { DeployUtil } from 'casper-js-sdk';
|
|
3
|
-
import { BaseTransaction, TransactionType } from '../baseCoin';
|
|
4
|
-
import { BaseKey } from '../baseCoin/iface';
|
|
5
|
-
import { KeyPair } from './keyPair';
|
|
6
|
-
import { CasperTransaction } from './ifaces';
|
|
7
|
-
export declare class Transaction extends BaseTransaction {
|
|
8
|
-
protected _type: TransactionType;
|
|
9
|
-
protected _deploy: DeployUtil.Deploy;
|
|
10
|
-
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
11
|
-
/** @inheritdoc */
|
|
12
|
-
canSign(key: BaseKey): boolean;
|
|
13
|
-
sign(keyPair: KeyPair): void;
|
|
14
|
-
/**
|
|
15
|
-
* Add a signature to this transaction and to and its deploy
|
|
16
|
-
*
|
|
17
|
-
* @param {string} signature The signature to add, in string hex format
|
|
18
|
-
* @param {KeyPair} keyPair The key pair that created the signature
|
|
19
|
-
*/
|
|
20
|
-
addSignature(signature: string, keyPair: KeyPair): void;
|
|
21
|
-
/** @inheritdoc */
|
|
22
|
-
toBroadcastFormat(): string;
|
|
23
|
-
/** @inheritdoc */
|
|
24
|
-
toJson(): CasperTransaction;
|
|
25
|
-
/**
|
|
26
|
-
* Set the transaction type
|
|
27
|
-
*
|
|
28
|
-
* @param {TransactionType} transactionType The transaction type to be set
|
|
29
|
-
*/
|
|
30
|
-
setTransactionType(transactionType: TransactionType): void;
|
|
31
|
-
/**
|
|
32
|
-
* Retrieve signatures from the deploy instance and load them into the signatures list
|
|
33
|
-
*/
|
|
34
|
-
loadPreviousSignatures(): void;
|
|
35
|
-
/**
|
|
36
|
-
* Set owners inside a json representing a wallet initialization tx.
|
|
37
|
-
*
|
|
38
|
-
* @param {Record<string, any>} txJson json to modify
|
|
39
|
-
*/
|
|
40
|
-
setOwnersInJson(txJson: Record<string, any>): void;
|
|
41
|
-
/**
|
|
42
|
-
* Set transfer fields inside a json representing a transfer tx.
|
|
43
|
-
*
|
|
44
|
-
* @param {Record<string, any>} txJson json to modify
|
|
45
|
-
*/
|
|
46
|
-
setTransfersFieldsInJson(txJson: Record<string, any>): void;
|
|
47
|
-
/**
|
|
48
|
-
* Set delegate / undelegate fields inside a json representing the tx.
|
|
49
|
-
*
|
|
50
|
-
* @param {Record<string, any>} txJson json to modify
|
|
51
|
-
*/
|
|
52
|
-
setDelegateFieldsInJson(txJson: Record<string, any>): void;
|
|
53
|
-
get casperTx(): DeployUtil.Deploy;
|
|
54
|
-
set casperTx(deploy: DeployUtil.Deploy);
|
|
55
|
-
}
|
|
56
|
-
//# sourceMappingURL=transaction.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../../src/coin/cspr/transaction.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAA4B,UAAU,EAA0B,MAAM,eAAe,CAAC;AAC7F,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAoB7C,qBAAa,WAAY,SAAQ,eAAe;IAC9C,SAAS,CAAC,KAAK,EAAE,eAAe,CAAC;IACjC,SAAS,CAAC,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC;gBAEzB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,kBAAkB;IAClB,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;IAI9B,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAoB5B;;;;;OAKG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAqBvD,kBAAkB;IAClB,iBAAiB,IAAI,MAAM;IAe3B,kBAAkB;IAClB,MAAM,IAAI,iBAAiB;IAgD3B;;;;OAIG;IACH,kBAAkB,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI;IAI1D;;OAEG;IACH,sBAAsB,IAAI,IAAI;IAQ9B;;;;OAIG;IACH,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IA2BlD;;;;OAIG;IACH,wBAAwB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAsB3D;;;;OAIG;IACH,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAsB1D,IAAI,QAAQ,IAAI,UAAU,CAAC,MAAM,CAEhC;IAED,IAAI,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,EAErC;CAGF"}
|
|
@@ -1,251 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __extends = (this && this.__extends) || (function () {
|
|
3
|
-
var extendStatics = function (d, b) {
|
|
4
|
-
extendStatics = Object.setPrototypeOf ||
|
|
5
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
-
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
-
return extendStatics(d, b);
|
|
8
|
-
};
|
|
9
|
-
return function (d, b) {
|
|
10
|
-
if (typeof b !== "function" && b !== null)
|
|
11
|
-
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
-
extendStatics(d, b);
|
|
13
|
-
function __() { this.constructor = d; }
|
|
14
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
-
};
|
|
16
|
-
})();
|
|
17
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
|
-
if (k2 === undefined) k2 = k;
|
|
19
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
20
|
-
}) : (function(o, m, k, k2) {
|
|
21
|
-
if (k2 === undefined) k2 = k;
|
|
22
|
-
o[k2] = m[k];
|
|
23
|
-
}));
|
|
24
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
25
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
26
|
-
}) : function(o, v) {
|
|
27
|
-
o["default"] = v;
|
|
28
|
-
});
|
|
29
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
30
|
-
if (mod && mod.__esModule) return mod;
|
|
31
|
-
var result = {};
|
|
32
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
33
|
-
__setModuleDefault(result, mod);
|
|
34
|
-
return result;
|
|
35
|
-
};
|
|
36
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
37
|
-
exports.Transaction = void 0;
|
|
38
|
-
var _ = __importStar(require("lodash"));
|
|
39
|
-
var casper_js_sdk_1 = require("casper-js-sdk");
|
|
40
|
-
var baseCoin_1 = require("../baseCoin");
|
|
41
|
-
var errors_1 = require("../baseCoin/errors");
|
|
42
|
-
var keyPair_1 = require("./keyPair");
|
|
43
|
-
var constants_1 = require("./constants");
|
|
44
|
-
var utils_1 = require("./utils");
|
|
45
|
-
var Transaction = /** @class */ (function (_super) {
|
|
46
|
-
__extends(Transaction, _super);
|
|
47
|
-
function Transaction(_coinConfig) {
|
|
48
|
-
return _super.call(this, _coinConfig) || this;
|
|
49
|
-
}
|
|
50
|
-
/** @inheritdoc */
|
|
51
|
-
Transaction.prototype.canSign = function (key) {
|
|
52
|
-
return true;
|
|
53
|
-
};
|
|
54
|
-
Transaction.prototype.sign = function (keyPair) {
|
|
55
|
-
var keys = keyPair.getKeys();
|
|
56
|
-
if (!keys.prv) {
|
|
57
|
-
throw new errors_1.SigningError('Missing private key');
|
|
58
|
-
}
|
|
59
|
-
if (this._deploy.approvals.some(function (ap) { return !ap.signer.startsWith(constants_1.SECP256K1_PREFIX) || !utils_1.isValidPublicKey(utils_1.removeAlgoPrefixFromHexValue(ap.signer)); })) {
|
|
60
|
-
throw new errors_1.SigningError('Invalid deploy. Already signed with an invalid key');
|
|
61
|
-
}
|
|
62
|
-
var secpKeys = new casper_js_sdk_1.Keys.Secp256K1(Uint8Array.from(Buffer.from(keys.pub, 'hex')), Uint8Array.from(Buffer.from(keys.prv, 'hex')));
|
|
63
|
-
var signedDeploy = casper_js_sdk_1.DeployUtil.signDeploy(this._deploy, secpKeys);
|
|
64
|
-
this._signatures.push(signedDeploy.approvals[signedDeploy.approvals.length - 1].signature);
|
|
65
|
-
};
|
|
66
|
-
/**
|
|
67
|
-
* Add a signature to this transaction and to and its deploy
|
|
68
|
-
*
|
|
69
|
-
* @param {string} signature The signature to add, in string hex format
|
|
70
|
-
* @param {KeyPair} keyPair The key pair that created the signature
|
|
71
|
-
*/
|
|
72
|
-
Transaction.prototype.addSignature = function (signature, keyPair) {
|
|
73
|
-
var pub = keyPair.getKeys().pub;
|
|
74
|
-
var signatureBuffer = Uint8Array.from(Buffer.from(signature, 'hex'));
|
|
75
|
-
var pubKeyBuffer = Uint8Array.from(Buffer.from(pub, 'hex'));
|
|
76
|
-
var parsedPublicKey = casper_js_sdk_1.Keys.Secp256K1.parsePublicKey(pubKeyBuffer, 'raw');
|
|
77
|
-
var pubKeyHex = casper_js_sdk_1.Keys.Secp256K1.accountHex(parsedPublicKey);
|
|
78
|
-
if (utils_1.removeAlgoPrefixFromHexValue(pubKeyHex) !== pub) {
|
|
79
|
-
throw new errors_1.SigningError('Signer does not match signature');
|
|
80
|
-
}
|
|
81
|
-
var signedDeploy = casper_js_sdk_1.DeployUtil.setSignature(this._deploy, signatureBuffer, casper_js_sdk_1.CLPublicKey.fromSecp256K1(parsedPublicKey));
|
|
82
|
-
var approval = _.last(signedDeploy.approvals);
|
|
83
|
-
if (utils_1.removeAlgoPrefixFromHexValue(approval.signature) !== signature) {
|
|
84
|
-
throw new errors_1.SigningError('Invalid signature');
|
|
85
|
-
}
|
|
86
|
-
this._signatures.push(signature);
|
|
87
|
-
};
|
|
88
|
-
/** @inheritdoc */
|
|
89
|
-
Transaction.prototype.toBroadcastFormat = function () {
|
|
90
|
-
if (!this.casperTx) {
|
|
91
|
-
throw new errors_1.InvalidTransactionError('Empty transaction');
|
|
92
|
-
}
|
|
93
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
94
|
-
var txJson = casper_js_sdk_1.DeployUtil.deployToJson(this.casperTx);
|
|
95
|
-
// The new casper lib is converting the TTL from miliseconds to another date format, in this case 1 day
|
|
96
|
-
// we need to leave it as ms for the HSM to be able to parse it
|
|
97
|
-
txJson.deploy.header.ttl = this.casperTx.header.ttl + "ms";
|
|
98
|
-
this.setOwnersInJson(txJson);
|
|
99
|
-
this.setTransfersFieldsInJson(txJson);
|
|
100
|
-
this.setDelegateFieldsInJson(txJson);
|
|
101
|
-
return JSON.stringify(txJson);
|
|
102
|
-
};
|
|
103
|
-
/** @inheritdoc */
|
|
104
|
-
Transaction.prototype.toJson = function () {
|
|
105
|
-
var _a;
|
|
106
|
-
var deployPayment = (_a = this._deploy.payment.asModuleBytes()) === null || _a === void 0 ? void 0 : _a.getArgByName('amount');
|
|
107
|
-
if (!deployPayment) {
|
|
108
|
-
throw new errors_1.InvalidTransactionError('Undefined fee');
|
|
109
|
-
}
|
|
110
|
-
var owner1Index = 0;
|
|
111
|
-
var owner2Index = 1;
|
|
112
|
-
var owner3Index = 2;
|
|
113
|
-
var sourcePublicKey = Buffer.from(this._deploy.header.account.value()).toString('hex');
|
|
114
|
-
var sourceAddress = new keyPair_1.KeyPair({ pub: sourcePublicKey }).getAddress();
|
|
115
|
-
var result = {
|
|
116
|
-
hash: Buffer.from(this._deploy.hash).toString('hex'),
|
|
117
|
-
fee: { gasLimit: deployPayment.value().toString(), gasPrice: this._deploy.header.gasPrice.toString() },
|
|
118
|
-
from: sourceAddress,
|
|
119
|
-
startTime: new Date(this._deploy.header.timestamp).toISOString(),
|
|
120
|
-
expiration: this._deploy.header.ttl,
|
|
121
|
-
deployType: this._deploy.session.getArgByName(constants_1.TRANSACTION_TYPE).value(),
|
|
122
|
-
};
|
|
123
|
-
var transactionType = utils_1.getDeployType(this._deploy.session);
|
|
124
|
-
switch (transactionType) {
|
|
125
|
-
case baseCoin_1.TransactionType.Send:
|
|
126
|
-
result.to = utils_1.getTransferDestinationAddress(this._deploy.session);
|
|
127
|
-
result.amount = utils_1.getTransferAmount(this._deploy.session);
|
|
128
|
-
result.transferId = utils_1.getTransferId(this._deploy.session);
|
|
129
|
-
break;
|
|
130
|
-
case baseCoin_1.TransactionType.WalletInitialization:
|
|
131
|
-
result.owner1 = this.casperTx.session.getArgByName(constants_1.OWNER_PREFIX + owner1Index).value();
|
|
132
|
-
result.owner2 = this.casperTx.session.getArgByName(constants_1.OWNER_PREFIX + owner2Index).value();
|
|
133
|
-
result.owner3 = this.casperTx.session.getArgByName(constants_1.OWNER_PREFIX + owner3Index).value();
|
|
134
|
-
break;
|
|
135
|
-
case baseCoin_1.TransactionType.StakingLock:
|
|
136
|
-
result.fromDelegate = utils_1.getDelegatorAddress(this.casperTx.session);
|
|
137
|
-
result.validator = utils_1.getValidatorAddress(this.casperTx.session);
|
|
138
|
-
result.amount = utils_1.getDelegateAmount(this.casperTx.session);
|
|
139
|
-
break;
|
|
140
|
-
case baseCoin_1.TransactionType.StakingUnlock:
|
|
141
|
-
result.fromDelegate = utils_1.getDelegatorAddress(this.casperTx.session);
|
|
142
|
-
result.validator = utils_1.getValidatorAddress(this.casperTx.session);
|
|
143
|
-
result.amount = utils_1.getDelegateAmount(this.casperTx.session);
|
|
144
|
-
break;
|
|
145
|
-
}
|
|
146
|
-
return result;
|
|
147
|
-
};
|
|
148
|
-
/**
|
|
149
|
-
* Set the transaction type
|
|
150
|
-
*
|
|
151
|
-
* @param {TransactionType} transactionType The transaction type to be set
|
|
152
|
-
*/
|
|
153
|
-
Transaction.prototype.setTransactionType = function (transactionType) {
|
|
154
|
-
this._type = transactionType;
|
|
155
|
-
};
|
|
156
|
-
/**
|
|
157
|
-
* Retrieve signatures from the deploy instance and load them into the signatures list
|
|
158
|
-
*/
|
|
159
|
-
Transaction.prototype.loadPreviousSignatures = function () {
|
|
160
|
-
var _this = this;
|
|
161
|
-
if (this._deploy.approvals && this._deploy.approvals.length > 0) {
|
|
162
|
-
this._deploy.approvals.forEach(function (approval) {
|
|
163
|
-
_this._signatures.push(approval.signature);
|
|
164
|
-
});
|
|
165
|
-
}
|
|
166
|
-
};
|
|
167
|
-
/**
|
|
168
|
-
* Set owners inside a json representing a wallet initialization tx.
|
|
169
|
-
*
|
|
170
|
-
* @param {Record<string, any>} txJson json to modify
|
|
171
|
-
*/
|
|
172
|
-
Transaction.prototype.setOwnersInJson = function (txJson) {
|
|
173
|
-
var _this = this;
|
|
174
|
-
if (utils_1.getDeployType(this.casperTx.session) === baseCoin_1.TransactionType.WalletInitialization) {
|
|
175
|
-
var argName_1 = 0;
|
|
176
|
-
var argValue_1 = 1;
|
|
177
|
-
var owner0 = 0;
|
|
178
|
-
var owner1 = 1;
|
|
179
|
-
var owner2 = 2;
|
|
180
|
-
var ownersValues_1 = new Map();
|
|
181
|
-
ownersValues_1.set(constants_1.TRANSACTION_TYPE, this.casperTx.session.getArgByName(constants_1.TRANSACTION_TYPE).value());
|
|
182
|
-
[owner0, owner1, owner2].forEach(function (index) {
|
|
183
|
-
ownersValues_1.set(constants_1.OWNER_PREFIX + index, _this.casperTx.session.getArgByName(constants_1.OWNER_PREFIX + index).value());
|
|
184
|
-
});
|
|
185
|
-
txJson['deploy']['session']['ModuleBytes']['args'].forEach(function (arg) {
|
|
186
|
-
if (ownersValues_1.has(arg[argName_1])) {
|
|
187
|
-
arg[argValue_1]['parsed'] = ownersValues_1.get(arg[argName_1]);
|
|
188
|
-
}
|
|
189
|
-
});
|
|
190
|
-
}
|
|
191
|
-
};
|
|
192
|
-
/**
|
|
193
|
-
* Set transfer fields inside a json representing a transfer tx.
|
|
194
|
-
*
|
|
195
|
-
* @param {Record<string, any>} txJson json to modify
|
|
196
|
-
*/
|
|
197
|
-
Transaction.prototype.setTransfersFieldsInJson = function (txJson) {
|
|
198
|
-
if (utils_1.getDeployType(this.casperTx.session) === baseCoin_1.TransactionType.Send) {
|
|
199
|
-
var argName_2 = 0;
|
|
200
|
-
var argValue_2 = 1;
|
|
201
|
-
var transferValues_1 = new Map();
|
|
202
|
-
transferValues_1.set(constants_1.TRANSACTION_TYPE, this.casperTx.session.getArgByName(constants_1.TRANSACTION_TYPE).value());
|
|
203
|
-
transferValues_1.set('amount', utils_1.getTransferAmount(this.casperTx.session));
|
|
204
|
-
transferValues_1.set('to_address', utils_1.getTransferDestinationAddress(this.casperTx.session));
|
|
205
|
-
var transferId = utils_1.getTransferId(this.casperTx.session);
|
|
206
|
-
if (transferId !== undefined) {
|
|
207
|
-
transferValues_1.set('id', transferId.toString());
|
|
208
|
-
}
|
|
209
|
-
txJson['deploy']['session']['Transfer']['args'].forEach(function (arg) {
|
|
210
|
-
if (transferValues_1.has(arg[argName_2])) {
|
|
211
|
-
arg[argValue_2]['parsed'] = transferValues_1.get(arg[argName_2]);
|
|
212
|
-
}
|
|
213
|
-
});
|
|
214
|
-
}
|
|
215
|
-
};
|
|
216
|
-
/**
|
|
217
|
-
* Set delegate / undelegate fields inside a json representing the tx.
|
|
218
|
-
*
|
|
219
|
-
* @param {Record<string, any>} txJson json to modify
|
|
220
|
-
*/
|
|
221
|
-
Transaction.prototype.setDelegateFieldsInJson = function (txJson) {
|
|
222
|
-
if (utils_1.getDeployType(this.casperTx.session) === baseCoin_1.TransactionType.StakingLock ||
|
|
223
|
-
utils_1.getDeployType(this.casperTx.session) === baseCoin_1.TransactionType.StakingUnlock) {
|
|
224
|
-
var argName_3 = 0;
|
|
225
|
-
var argValue_3 = 1;
|
|
226
|
-
var delegateValues_1 = new Map();
|
|
227
|
-
delegateValues_1.set(constants_1.TRANSACTION_TYPE, this.casperTx.session.getArgByName(constants_1.TRANSACTION_TYPE).value());
|
|
228
|
-
delegateValues_1.set('amount', utils_1.getDelegateAmount(this.casperTx.session));
|
|
229
|
-
delegateValues_1.set(constants_1.DELEGATE_FROM_ADDRESS, utils_1.getDelegatorAddress(this.casperTx.session));
|
|
230
|
-
delegateValues_1.set(constants_1.DELEGATE_VALIDATOR, utils_1.getValidatorAddress(this.casperTx.session));
|
|
231
|
-
txJson.deploy.session.ModuleBytes.args.forEach(function (arg) {
|
|
232
|
-
if (delegateValues_1.has(arg[argName_3])) {
|
|
233
|
-
arg[argValue_3]['parsed'] = delegateValues_1.get(arg[argName_3]);
|
|
234
|
-
}
|
|
235
|
-
});
|
|
236
|
-
}
|
|
237
|
-
};
|
|
238
|
-
Object.defineProperty(Transaction.prototype, "casperTx", {
|
|
239
|
-
get: function () {
|
|
240
|
-
return this._deploy;
|
|
241
|
-
},
|
|
242
|
-
set: function (deploy) {
|
|
243
|
-
this._deploy = deploy;
|
|
244
|
-
},
|
|
245
|
-
enumerable: false,
|
|
246
|
-
configurable: true
|
|
247
|
-
});
|
|
248
|
-
return Transaction;
|
|
249
|
-
}(baseCoin_1.BaseTransaction));
|
|
250
|
-
exports.Transaction = Transaction;
|
|
251
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29pbi9jc3ByL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx3Q0FBNEI7QUFFNUIsK0NBQTZGO0FBQzdGLHdDQUErRDtBQUUvRCw2Q0FBMkU7QUFDM0UscUNBQW9DO0FBRXBDLHlDQU1xQjtBQUNyQixpQ0FVaUI7QUFFakI7SUFBaUMsK0JBQWU7SUFJOUMscUJBQVksV0FBaUM7ZUFDM0Msa0JBQU0sV0FBVyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsNkJBQU8sR0FBUCxVQUFRLEdBQVk7UUFDbEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsMEJBQUksR0FBSixVQUFLLE9BQWdCO1FBQ25CLElBQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUMvQixJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNiLE1BQU0sSUFBSSxxQkFBWSxDQUFDLHFCQUFxQixDQUFDLENBQUM7U0FDL0M7UUFDRCxJQUNFLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksQ0FDekIsVUFBQyxFQUFFLElBQUssT0FBQSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLDRCQUFnQixDQUFDLElBQUksQ0FBQyx3QkFBZ0IsQ0FBQyxvQ0FBNEIsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBckcsQ0FBcUcsQ0FDOUcsRUFDRDtZQUNBLE1BQU0sSUFBSSxxQkFBWSxDQUFDLG9EQUFvRCxDQUFDLENBQUM7U0FDOUU7UUFDRCxJQUFNLFFBQVEsR0FBRyxJQUFJLG9CQUFJLENBQUMsU0FBUyxDQUNqQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFD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LENBQUMsQ0FBQyxDQUFDO2lCQUM1RDtZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRUQsc0JBQUksaUNBQVE7YUFBWjtZQUNFLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUN0QixDQUFDO2FBRUQsVUFBYSxNQUF5QjtZQUNwQyxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztRQUN4QixDQUFDOzs7T0FKQTtJQU9ILGtCQUFDO0FBQUQsQ0FBQyxBQWhQRCxDQUFpQywwQkFBZSxHQWdQL0M7QUFoUFksa0NBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHsgQ0xQdWJsaWNLZXkgYXMgUHVibGljS2V5LCBEZXBsb3lVdGlsLCBLZXlzLCBDTFN0cmluZywgQ0xVNTEyIH0gZnJvbSAnY2FzcGVyLWpzLXNkayc7XG5pbXBvcnQgeyBCYXNlVHJhbnNhY3Rpb24sIFRyYW5zYWN0aW9uVHlwZSB9IGZyb20gJy4uL2Jhc2VDb2luJztcbmltcG9ydCB7IEJhc2VLZXkgfSBmcm9tICcuLi9iYXNlQ29pbi9pZmFjZSc7XG5pbXBvcnQgeyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvciwgU2lnbmluZ0Vycm9yIH0gZnJvbSAnLi4vYmFzZUNvaW4vZXJyb3JzJztcbmltcG9ydCB7IEtleVBhaXIgfSBmcm9tICcuL2tleVBhaXInO1xuaW1wb3J0IHsgQ2FzcGVyVHJhbnNhY3Rpb24gfSBmcm9tICcuL2lmYWNlcyc7XG5pbXBvcnQge1xuICBERUxFR0FURV9GUk9NX0FERFJFU1MsXG4gIERFTEVHQVRFX1ZBTElEQVRPUixcbiAgT1dORVJfUFJFRklYLFxuICBTRUNQMjU2SzFfUFJFRklYLFxuICBUUkFOU0FDVElPTl9UWVBFLFxufSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQge1xuICBnZXRUcmFuc2ZlckFtb3VudCxcbiAgZ2V0VHJhbnNmZXJEZXN0aW5hdGlvbkFkZHJlc3MsXG4gIGdldFRyYW5zZmVySWQsXG4gIGlzVmFsaWRQdWJsaWNLZXksXG4gIHJlbW92ZUFsZ29QcmVmaXhGcm9tSGV4VmFsdWUsXG4gIGdldERlcGxveVR5cGUsXG4gIGdldERlbGVnYXRvckFkZHJlc3MsXG4gIGdldFZhbGlkYXRvckFkZHJlc3MsXG4gIGdldERlbGVnYXRlQW1vdW50LFxufSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uIGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uIHtcbiAgcHJvdGVjdGVkIF90eXBlOiBUcmFuc2FjdGlvblR5cGU7XG4gIHByb3RlY3RlZCBfZGVwbG95OiBEZXBsb3lVdGlsLkRlcGxveTtcblxuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgY2FuU2lnbihrZXk6IEJhc2VLZXkpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHNpZ24oa2V5UGFpcjogS2V5UGFpcik6IHZvaWQge1xuICAgIGNvbnN0IGtleXMgPSBrZXlQYWlyLmdldEtleXMoKTtcbiAgICBpZiAoIWtleXMucHJ2KSB7XG4gICAgICB0aHJvdyBuZXcgU2lnbmluZ0Vycm9yKCdNaXNzaW5nIHByaXZhdGUga2V5Jyk7XG4gICAgfVxuICAgIGlmIChcbiAgICAgIHRoaXMuX2RlcGxveS5hcHByb3ZhbHMuc29tZShcbiAgICAgICAgKGFwKSA9PiAhYXAuc2lnbmVyLnN0YXJ0c1dpdGgoU0VDUDI1NksxX1BSRUZJWCkgfHwgIWlzVmFsaWRQdWJsaWNLZXkocmVtb3ZlQWxnb1ByZWZpeEZyb21IZXhWYWx1ZShhcC5zaWduZXIpKSxcbiAgICAgIClcbiAgICApIHtcbiAgICAgIHRocm93IG5ldyBTaWduaW5nRXJyb3IoJ0ludmFsaWQgZGVwbG95LiBBbHJlYWR5IHNpZ25lZCB3aXRoIGFuIGludmFsaWQga2V5Jyk7XG4gICAgfVxuICAgIGNvbnN0IHNlY3BLZXlzID0gbmV3IEtleXMuU2VjcDI1NksxKFxuICAgICAgVWludDhBcnJheS5mcm9tKEJ1ZmZlci5mcm9tKGtleXMucHViLCAnaGV4JykpLFxuICAgICAgVWludDhBcnJheS5mcm9tKEJ1ZmZlci5mcm9tKGtleXMucHJ2LCAnaGV4JykpLFxuICAgICk7XG4gICAgY29uc3Qgc2lnbmVkRGVwbG95ID0gRGVwbG95VXRpbC5zaWduRGVwbG95KHRoaXMuX2RlcGxveSwgc2VjcEtleXMpO1xuICAgIHRoaXMuX3NpZ25hdHVyZXMucHVzaChzaWduZWREZXBsb3kuYXBwcm92YWxzW3NpZ25lZERlcGxveS5hcHByb3ZhbHMubGVuZ3RoIC0gMV0uc2lnbmF0dXJlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSBzaWduYXR1cmUgdG8gdGhpcyB0cmFuc2FjdGlvbiBhbmQgdG8gYW5kIGl0cyBkZXBsb3lcbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHNpZ25hdHVyZSBUaGUgc2lnbmF0dXJlIHRvIGFkZCwgaW4gc3RyaW5nIGhleCBmb3JtYXRcbiAgICogQHBhcmFtIHtLZXlQYWlyfSBrZXlQYWlyIFRoZSBrZXkgcGFpciB0aGF0IGNyZWF0ZWQgdGhlIHNpZ25hdHVyZVxuICAgKi9cbiAgYWRkU2lnbmF0dXJlKHNpZ25hdHVyZTogc3RyaW5nLCBrZXlQYWlyOiBLZXlQYWlyKTogdm9pZCB7XG4gICAgY29uc3QgcHViID0ga2V5UGFpci5nZXRLZXlzKCkucHViO1xuICAgIGNvbnN0IHNpZ25hdHVyZUJ1ZmZlciA9IFVpbnQ4QXJyYXkuZnJvbShCdWZmZXIuZnJvbShzaWduYXR1cmUsICdoZXgnKSk7XG4gICAgY29uc3QgcHViS2V5QnVmZmVyID0gVWludDhBcnJheS5mcm9tKEJ1ZmZlci5mcm9tKHB1YiwgJ2hleCcpKTtcbiAgICBjb25zdCBwYXJzZWRQdWJsaWNLZXkgPSBLZXlzLlNlY3AyNTZLMS5wYXJzZVB1YmxpY0tleShwdWJLZXlCdWZmZXIsICdyYXcnKTtcbiAgICBjb25zdCBwdWJLZXlIZXggPSBLZXlzLlNlY3AyNTZLMS5hY2NvdW50SGV4KHBhcnNlZFB1YmxpY0tleSk7XG4gICAgaWYgKHJlbW92ZUFsZ29QcmVmaXhGcm9tSGV4VmFsdWUocHViS2V5SGV4KSAhPT0gcHViKSB7XG4gICAgICB0aHJvdyBuZXcgU2lnbmluZ0Vycm9yKCdTaWduZXIgZG9lcyBub3QgbWF0Y2ggc2lnbmF0dXJlJyk7XG4gICAgfVxuICAgIGNvbnN0IHNpZ25lZERlcGxveSA9IERlcGxveVV0aWwuc2V0U2lnbmF0dXJlKFxuICAgICAgdGhpcy5fZGVwbG95LFxuICAgICAgc2lnbmF0dXJlQnVmZmVyLFxuICAgICAgUHVibGljS2V5LmZyb21TZWNwMjU2SzEocGFyc2VkUHVibGljS2V5KSxcbiAgICApO1xuICAgIGNvbnN0IGFwcHJvdmFsID0gXy5sYXN0KHNpZ25lZERlcGxveS5hcHByb3ZhbHMpIGFzIERlcGxveVV0aWwuQXBwcm92YWw7XG4gICAgaWYgKHJlbW92ZUFsZ29QcmVmaXhGcm9tSGV4VmFsdWUoYXBwcm92YWwuc2lnbmF0dXJlKSAhPT0gc2lnbmF0dXJlKSB7XG4gICAgICB0aHJvdyBuZXcgU2lnbmluZ0Vycm9yKCdJbnZhbGlkIHNpZ25hdHVyZScpO1xuICAgIH1cbiAgICB0aGlzLl9zaWduYXR1cmVzLnB1c2goc2lnbmF0dXJlKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB0b0Jyb2FkY2FzdEZvcm1hdCgpOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5jYXNwZXJUeCkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdFbXB0eSB0cmFuc2FjdGlvbicpO1xuICAgIH1cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIGNvbnN0IHR4SnNvbjogYW55ID0gRGVwbG95VXRpbC5kZXBsb3lUb0pzb24odGhpcy5jYXNwZXJUeCk7XG4gICAgLy8gVGhlIG5ldyBjYXNwZXIgbGliIGlzIGNvbnZlcnRpbmcgdGhlIFRUTCBmcm9tIG1pbGlzZWNvbmRzIHRvIGFub3RoZXIgZGF0ZSBmb3JtYXQsIGluIHRoaXMgY2FzZSAxIGRheVxuICAgIC8vIHdlIG5lZWQgdG8gbGVhdmUgaXQgYXMgbXMgZm9yIHRoZSBIU00gdG8gYmUgYWJsZSB0byBwYXJzZSBpdFxuICAgIHR4SnNvbi5kZXBsb3kuaGVhZGVyLnR0bCA9IGAke3RoaXMuY2FzcGVyVHguaGVhZGVyLnR0bH1tc2A7XG4gICAgdGhpcy5zZXRPd25lcnNJbkpzb24odHhKc29uKTtcbiAgICB0aGlzLnNldFRyYW5zZmVyc0ZpZWxkc0luSnNvbih0eEpzb24pO1xuICAgIHRoaXMuc2V0RGVsZWdhdGVGaWVsZHNJbkpzb24odHhKc29uKTtcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodHhKc29uKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB0b0pzb24oKTogQ2FzcGVyVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IGRlcGxveVBheW1lbnQgPSB0aGlzLl9kZXBsb3kucGF5bWVudC5hc01vZHVsZUJ5dGVzKCk/LmdldEFyZ0J5TmFtZSgnYW1vdW50JykgYXMgQ0xVNTEyO1xuICAgIGlmICghZGVwbG95UGF5bWVudCkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdVbmRlZmluZWQgZmVlJyk7XG4gICAgfVxuXG4gICAgY29uc3Qgb3duZXIxSW5kZXggPSAwO1xuICAgIGNvbnN0IG93bmVyMkluZGV4ID0gMTtcbiAgICBjb25zdCBvd25lcjNJbmRleCA9IDI7XG4gICAgY29uc3Qgc291cmNlUHVibGljS2V5ID0gQnVmZmVyLmZyb20odGhpcy5fZGVwbG95LmhlYWRlci5hY2NvdW50LnZhbHVlKCkpLnRvU3RyaW5nKCdoZXgnKTtcbiAgICBjb25zdCBzb3VyY2VBZGRyZXNzID0gbmV3IEtleVBhaXIoeyBwdWI6IHNvdXJjZVB1YmxpY0tleSB9KS5nZXRBZGRyZXNzKCk7XG5cbiAgICBjb25zdCByZXN1bHQ6IENhc3BlclRyYW5zYWN0aW9uID0ge1xuICAgICAgaGFzaDogQnVmZmVyLmZyb20odGhpcy5fZGVwbG95Lmhhc2gpLnRvU3RyaW5nKCdoZXgnKSxcbiAgICAgIGZlZTogeyBnYXNMaW1pdDogZGVwbG95UGF5bWVudC52YWx1ZSgpLnRvU3RyaW5nKCksIGdhc1ByaWNlOiB0aGlzLl9kZXBsb3kuaGVhZGVyLmdhc1ByaWNlLnRvU3RyaW5nKCkgfSxcbiAgICAgIGZyb206IHNvdXJjZUFkZHJlc3MsXG4gICAgICBzdGFydFRpbWU6IG5ldyBEYXRlKHRoaXMuX2RlcGxveS5oZWFkZXIudGltZXN0YW1wKS50b0lTT1N0cmluZygpLFxuICAgICAgZXhwaXJhdGlvbjogdGhpcy5fZGVwbG95LmhlYWRlci50dGwsXG4gICAgICBkZXBsb3lUeXBlOiAodGhpcy5fZGVwbG95LnNlc3Npb24uZ2V0QXJnQnlOYW1lKFRSQU5TQUNUSU9OX1RZUEUpIGFzIENMU3RyaW5nKS52YWx1ZSgpLFxuICAgIH07XG5cbiAgICBjb25zdCB0cmFuc2FjdGlvblR5cGUgPSBnZXREZXBsb3lUeXBlKHRoaXMuX2RlcGxveS5zZXNzaW9uKTtcblxuICAgIHN3aXRjaCAodHJhbnNhY3Rpb25UeXBlKSB7XG4gICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5TZW5kOlxuICAgICAgICByZXN1bHQudG8gPSBnZXRUcmFuc2ZlckRlc3RpbmF0aW9uQWRkcmVzcyh0aGlzLl9kZXBsb3kuc2Vzc2lvbik7XG4gICAgICAgIHJlc3VsdC5hbW91bnQgPSBnZXRUcmFuc2ZlckFtb3VudCh0aGlzLl9kZXBsb3kuc2Vzc2lvbik7XG4gICAgICAgIHJlc3VsdC50cmFuc2ZlcklkID0gZ2V0VHJhbnNmZXJJZCh0aGlzLl9kZXBsb3kuc2Vzc2lvbik7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBUcmFuc2FjdGlvblR5cGUuV2FsbGV0SW5pdGlhbGl6YXRpb246XG4gICAgICAgIHJlc3VsdC5vd25lcjEgPSAodGhpcy5jYXNwZXJUeC5zZXNzaW9uLmdldEFyZ0J5TmFtZShPV05FUl9QUkVGSVggKyBvd25lcjFJbmRleCkgYXMgQ0xTdHJpbmcpLnZhbHVlKCk7XG4gICAgICAgIHJlc3VsdC5vd25lcjIgPSAodGhpcy5jYXNwZXJUeC5zZXNzaW9uLmdldEFyZ0J5TmFtZShPV05FUl9QUkVGSVggKyBvd25lcjJJbmRleCkgYXMgQ0xTdHJpbmcpLnZhbHVlKCk7XG4gICAgICAgIHJlc3VsdC5vd25lcjMgPSAodGhpcy5jYXNwZXJUeC5zZXNzaW9uLmdldEFyZ0J5TmFtZShPV05FUl9QUkVGSVggKyBvd25lcjNJbmRleCkgYXMgQ0xTdHJpbmcpLnZhbHVlKCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBUcmFuc2FjdGlvblR5cGUuU3Rha2luZ0xvY2s6XG4gICAgICAgIHJlc3VsdC5mcm9tRGVsZWdhdGUgPSBnZXREZWxlZ2F0b3JBZGRyZXNzKHRoaXMuY2FzcGVyVHguc2Vzc2lvbik7XG4gICAgICAgIHJlc3VsdC52YWxpZGF0b3IgPSBnZXRWYWxpZGF0b3JBZGRyZXNzKHRoaXMuY2FzcGVyVHguc2Vzc2lvbik7XG4gICAgICAgIHJlc3VsdC5hbW91bnQgPSBnZXREZWxlZ2F0ZUFtb3VudCh0aGlzLmNhc3BlclR4LnNlc3Npb24pO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdVbmxvY2s6XG4gICAgICAgIHJlc3VsdC5mcm9tRGVsZWdhdGUgPSBnZXREZWxlZ2F0b3JBZGRyZXNzKHRoaXMuY2FzcGVyVHguc2Vzc2lvbik7XG4gICAgICAgIHJlc3VsdC52YWxpZGF0b3IgPSBnZXRWYWxpZGF0b3JBZGRyZXNzKHRoaXMuY2FzcGVyVHguc2Vzc2lvbik7XG4gICAgICAgIHJlc3VsdC5hbW91bnQgPSBnZXREZWxlZ2F0ZUFtb3VudCh0aGlzLmNhc3BlclR4LnNlc3Npb24pO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHRyYW5zYWN0aW9uIHR5cGVcbiAgICpcbiAgICogQHBhcmFtIHtUcmFuc2FjdGlvblR5cGV9IHRyYW5zYWN0aW9uVHlwZSBUaGUgdHJhbnNhY3Rpb24gdHlwZSB0byBiZSBzZXRcbiAgICovXG4gIHNldFRyYW5zYWN0aW9uVHlwZSh0cmFuc2FjdGlvblR5cGU6IFRyYW5zYWN0aW9uVHlwZSk6IHZvaWQge1xuICAgIHRoaXMuX3R5cGUgPSB0cmFuc2FjdGlvblR5cGU7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmUgc2lnbmF0dXJlcyBmcm9tIHRoZSBkZXBsb3kgaW5zdGFuY2UgYW5kIGxvYWQgdGhlbSBpbnRvIHRoZSBzaWduYXR1cmVzIGxpc3RcbiAgICovXG4gIGxvYWRQcmV2aW91c1NpZ25hdHVyZXMoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2RlcGxveS5hcHByb3ZhbHMgJiYgdGhpcy5fZGVwbG95LmFwcHJvdmFscy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLl9kZXBsb3kuYXBwcm92YWxzLmZvckVhY2goKGFwcHJvdmFsKSA9PiB7XG4gICAgICAgIHRoaXMuX3NpZ25hdHVyZXMucHVzaChhcHByb3ZhbC5zaWduYXR1cmUpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFNldCBvd25lcnMgaW5zaWRlIGEganNvbiByZXByZXNlbnRpbmcgYSB3YWxsZXQgaW5pdGlhbGl6YXRpb24gdHguXG4gICAqXG4gICAqIEBwYXJhbSB7UmVjb3JkPHN0cmluZywgYW55Pn0gdHhKc29uIGpzb24gdG8gbW9kaWZ5XG4gICAqL1xuICBzZXRPd25lcnNJbkpzb24odHhKc29uOiBSZWNvcmQ8c3RyaW5nLCBhbnk+KTogdm9pZCB7XG4gICAgaWYgKGdldERlcGxveVR5cGUodGhpcy5jYXNwZXJUeC5zZXNzaW9uKSA9PT0gVHJhbnNhY3Rpb25UeXBlLldhbGxldEluaXRpYWxpemF0aW9uKSB7XG4gICAgICBjb25zdCBhcmdOYW1lID0gMDtcbiAgICAgIGNvbnN0IGFyZ1ZhbHVlID0gMTtcbiAgICAgIGNvbnN0IG93bmVyMCA9IDA7XG4gICAgICBjb25zdCBvd25lcjEgPSAxO1xuICAgICAgY29uc3Qgb3duZXIyID0gMjtcblxuICAgICAgY29uc3Qgb3duZXJzVmFsdWVzID0gbmV3IE1hcCgpO1xuXG4gICAgICBvd25lcnNWYWx1ZXMuc2V0KFRSQU5TQUNUSU9OX1RZUEUsICh0aGlzLmNhc3BlclR4LnNlc3Npb24uZ2V0QXJnQnlOYW1lKFRSQU5TQUNUSU9OX1RZUEUpIGFzIENMU3RyaW5nKS52YWx1ZSgpKTtcblxuICAgICAgW293bmVyMCwgb3duZXIxLCBvd25lcjJdLmZvckVhY2goKGluZGV4KSA9PiB7XG4gICAgICAgIG93bmVyc1ZhbHVlcy5zZXQoXG4gICAgICAgICAgT1dORVJfUFJFRklYICsgaW5kZXgsXG4gICAgICAgICAgKHRoaXMuY2FzcGVyVHguc2Vzc2lvbi5nZXRBcmdCeU5hbWUoT1dORVJfUFJFRklYICsgaW5kZXgpIGFzIENMU3RyaW5nKS52YWx1ZSgpLFxuICAgICAgICApO1xuICAgICAgfSk7XG5cbiAgICAgIHR4SnNvblsnZGVwbG95J11bJ3Nlc3Npb24nXVsnTW9kdWxlQnl0ZXMnXVsnYXJncyddLmZvckVhY2goKGFyZykgPT4ge1xuICAgICAgICBpZiAob3duZXJzVmFsdWVzLmhhcyhhcmdbYXJnTmFtZV0pKSB7XG4gICAgICAgICAgYXJnW2FyZ1ZhbHVlXVsncGFyc2VkJ10gPSBvd25lcnNWYWx1ZXMuZ2V0KGFyZ1thcmdOYW1lXSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdHJhbnNmZXIgZmllbGRzIGluc2lkZSBhIGpzb24gcmVwcmVzZW50aW5nIGEgdHJhbnNmZXIgdHguXG4gICAqXG4gICAqIEBwYXJhbSB7UmVjb3JkPHN0cmluZywgYW55Pn0gdHhKc29uIGpzb24gdG8gbW9kaWZ5XG4gICAqL1xuICBzZXRUcmFuc2ZlcnNGaWVsZHNJbkpzb24odHhKc29uOiBSZWNvcmQ8c3RyaW5nLCBhbnk+KTogdm9pZCB7XG4gICAgaWYgKGdldERlcGxveVR5cGUodGhpcy5jYXNwZXJUeC5zZXNzaW9uKSA9PT0gVHJhbnNhY3Rpb25UeXBlLlNlbmQpIHtcbiAgICAgIGNvbnN0IGFyZ05hbWUgPSAwO1xuICAgICAgY29uc3QgYXJnVmFsdWUgPSAxO1xuXG4gICAgICBjb25zdCB0cmFuc2ZlclZhbHVlcyA9IG5ldyBNYXAoKTtcbiAgICAgIHRyYW5zZmVyVmFsdWVzLnNldChUUkFOU0FDVElPTl9UWVBFLCAodGhpcy5jYXNwZXJUeC5zZXNzaW9uLmdldEFyZ0J5TmFtZShUUkFOU0FDVElPTl9UWVBFKSBhcyBDTFN0cmluZykudmFsdWUoKSk7XG4gICAgICB0cmFuc2ZlclZhbHVlcy5zZXQoJ2Ftb3VudCcsIGdldFRyYW5zZmVyQW1vdW50KHRoaXMuY2FzcGVyVHguc2Vzc2lvbikpO1xuICAgICAgdHJhbnNmZXJWYWx1ZXMuc2V0KCd0b19hZGRyZXNzJywgZ2V0VHJhbnNmZXJEZXN0aW5hdGlvbkFkZHJlc3ModGhpcy5jYXNwZXJUeC5zZXNzaW9uKSk7XG4gICAgICBjb25zdCB0cmFuc2ZlcklkID0gZ2V0VHJhbnNmZXJJZCh0aGlzLmNhc3BlclR4LnNlc3Npb24pO1xuICAgICAgaWYgKHRyYW5zZmVySWQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICB0cmFuc2ZlclZhbHVlcy5zZXQoJ2lkJywgdHJhbnNmZXJJZC50b1N0cmluZygpKTtcbiAgICAgIH1cblxuICAgICAgdHhKc29uWydkZXBsb3knXVsnc2Vzc2lvbiddWydUcmFuc2ZlciddWydhcmdzJ10uZm9yRWFjaCgoYXJnKSA9PiB7XG4gICAgICAgIGlmICh0cmFuc2ZlclZhbHVlcy5oYXMoYXJnW2FyZ05hbWVdKSkge1xuICAgICAgICAgIGFyZ1thcmdWYWx1ZV1bJ3BhcnNlZCddID0gdHJhbnNmZXJWYWx1ZXMuZ2V0KGFyZ1thcmdOYW1lXSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgZGVsZWdhdGUgLyB1bmRlbGVnYXRlIGZpZWxkcyBpbnNpZGUgYSBqc29uIHJlcHJlc2VudGluZyB0aGUgdHguXG4gICAqXG4gICAqIEBwYXJhbSB7UmVjb3JkPHN0cmluZywgYW55Pn0gdHhKc29uIGpzb24gdG8gbW9kaWZ5XG4gICAqL1xuICBzZXREZWxlZ2F0ZUZpZWxkc0luSnNvbih0eEpzb246IFJlY29yZDxzdHJpbmcsIGFueT4pOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICBnZXREZXBsb3lUeXBlKHRoaXMuY2FzcGVyVHguc2Vzc2lvbikgPT09IFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nTG9jayB8fFxuICAgICAgZ2V0RGVwbG95VHlwZSh0aGlzLmNhc3BlclR4LnNlc3Npb24pID09PSBUcmFuc2FjdGlvblR5cGUuU3Rha2luZ1VubG9ja1xuICAgICkge1xuICAgICAgY29uc3QgYXJnTmFtZSA9IDA7XG4gICAgICBjb25zdCBhcmdWYWx1ZSA9IDE7XG5cbiAgICAgIGNvbnN0IGRlbGVnYXRlVmFsdWVzID0gbmV3IE1hcCgpO1xuICAgICAgZGVsZWdhdGVWYWx1ZXMuc2V0KFRSQU5TQUNUSU9OX1RZUEUsICh0aGlzLmNhc3BlclR4LnNlc3Npb24uZ2V0QXJnQnlOYW1lKFRSQU5TQUNUSU9OX1RZUEUpIGFzIENMU3RyaW5nKS52YWx1ZSgpKTtcbiAgICAgIGRlbGVnYXRlVmFsdWVzLnNldCgnYW1vdW50JywgZ2V0RGVsZWdhdGVBbW91bnQodGhpcy5jYXNwZXJUeC5zZXNzaW9uKSk7XG4gICAgICBkZWxlZ2F0ZVZhbHVlcy5zZXQoREVMRUdBVEVfRlJPTV9BRERSRVNTLCBnZXREZWxlZ2F0b3JBZGRyZXNzKHRoaXMuY2FzcGVyVHguc2Vzc2lvbikpO1xuICAgICAgZGVsZWdhdGVWYWx1ZXMuc2V0KERFTEVHQVRFX1ZBTElEQVRPUiwgZ2V0VmFsaWRhdG9yQWRkcmVzcyh0aGlzLmNhc3BlclR4LnNlc3Npb24pKTtcblxuICAgICAgdHhKc29uLmRlcGxveS5zZXNzaW9uLk1vZHVsZUJ5dGVzLmFyZ3MuZm9yRWFjaCgoYXJnKSA9PiB7XG4gICAgICAgIGlmIChkZWxlZ2F0ZVZhbHVlcy5oYXMoYXJnW2FyZ05hbWVdKSkge1xuICAgICAgICAgIGFyZ1thcmdWYWx1ZV1bJ3BhcnNlZCddID0gZGVsZWdhdGVWYWx1ZXMuZ2V0KGFyZ1thcmdOYW1lXSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIGdldCBjYXNwZXJUeCgpOiBEZXBsb3lVdGlsLkRlcGxveSB7XG4gICAgcmV0dXJuIHRoaXMuX2RlcGxveTtcbiAgfVxuXG4gIHNldCBjYXNwZXJUeChkZXBsb3k6IERlcGxveVV0aWwuRGVwbG95KSB7XG4gICAgdGhpcy5fZGVwbG95ID0gZGVwbG95O1xuICB9XG5cbiAgLy8gZW5kcmVnaW9uXG59XG4iXX0=
|
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
import BigNumber from 'bignumber.js';
|
|
2
|
-
import { BaseCoin as CoinConfig } from '@bitgo/statics';
|
|
3
|
-
import { BaseTransactionBuilder } from '../baseCoin';
|
|
4
|
-
import { BaseAddress, BaseKey } from '../baseCoin/iface';
|
|
5
|
-
import { Transaction } from './transaction';
|
|
6
|
-
import { KeyPair } from './keyPair';
|
|
7
|
-
import { Fee, CasperModuleBytesTransaction, CasperTransferTransaction, CasperDelegateTransaction, SignatureData } from './ifaces';
|
|
8
|
-
export declare const DEFAULT_M = 3;
|
|
9
|
-
export declare const DEFAULT_N = 2;
|
|
10
|
-
export declare abstract class TransactionBuilder extends BaseTransactionBuilder {
|
|
11
|
-
protected _source: BaseAddress;
|
|
12
|
-
protected _fee: Fee;
|
|
13
|
-
private _transaction;
|
|
14
|
-
protected _session: CasperTransferTransaction | CasperModuleBytesTransaction | CasperDelegateTransaction;
|
|
15
|
-
protected _expiration: number;
|
|
16
|
-
protected _multiSignerKeyPairs: KeyPair[];
|
|
17
|
-
protected _signatures: SignatureData[];
|
|
18
|
-
protected _chainName: string;
|
|
19
|
-
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
20
|
-
/** @inheritdoc */
|
|
21
|
-
protected buildImplementation(): Promise<Transaction>;
|
|
22
|
-
/** @inheritdoc */
|
|
23
|
-
protected fromImplementation(rawTransaction: string): Transaction;
|
|
24
|
-
/** @inheritdoc */
|
|
25
|
-
protected signImplementation(key: BaseKey): Transaction;
|
|
26
|
-
/**
|
|
27
|
-
* Initialize the transaction builder fields using the decoded transaction data
|
|
28
|
-
*
|
|
29
|
-
* @param {Transaction} tx the transaction data
|
|
30
|
-
*/
|
|
31
|
-
initBuilder(tx: Transaction): void;
|
|
32
|
-
/**
|
|
33
|
-
* Set the transaction fees
|
|
34
|
-
*
|
|
35
|
-
* @param {BaseFee} fee The maximum gas to pay
|
|
36
|
-
* @returns {TransactionBuilder} This transaction builder
|
|
37
|
-
*/
|
|
38
|
-
fee(fee: Fee): this;
|
|
39
|
-
/**
|
|
40
|
-
* Set the transaction source
|
|
41
|
-
*
|
|
42
|
-
* @param {BaseAddress} address The source account
|
|
43
|
-
* @returns {TransactionBuilder} This transaction builder
|
|
44
|
-
*/
|
|
45
|
-
source(address: BaseAddress): this;
|
|
46
|
-
/**
|
|
47
|
-
* Set the transaction expirationTime
|
|
48
|
-
*
|
|
49
|
-
* @param {string} expirationTime The transaction expirationTime
|
|
50
|
-
* @returns {TransactionBuilder} This transaction builder
|
|
51
|
-
*/
|
|
52
|
-
expiration(expirationTime: number): this;
|
|
53
|
-
/**
|
|
54
|
-
* Set an external transaction signature
|
|
55
|
-
*
|
|
56
|
-
* @param {string} signature Hex encoded signature string
|
|
57
|
-
* @param {KeyPair} keyPair The public key keypair that was used to create the signature
|
|
58
|
-
* @returns {TransactionBuilder} This transaction builder
|
|
59
|
-
*/
|
|
60
|
-
signature(signature: string, keyPair: KeyPair): this;
|
|
61
|
-
nodeChainName(chainName: string): this;
|
|
62
|
-
/** @inheritdoc */
|
|
63
|
-
validateAddress(address: BaseAddress): void;
|
|
64
|
-
/** @inheritdoc */
|
|
65
|
-
validateKey(key: BaseKey): void;
|
|
66
|
-
/** @inheritdoc */
|
|
67
|
-
validateRawTransaction(rawTransaction: string): void;
|
|
68
|
-
/** @inheritdoc */
|
|
69
|
-
validateTransaction(transaction?: Transaction): void;
|
|
70
|
-
/** @inheritdoc */
|
|
71
|
-
validateValue(value: BigNumber): void;
|
|
72
|
-
/**
|
|
73
|
-
* Validates that the mandatory fields are defined
|
|
74
|
-
*/
|
|
75
|
-
validateMandatoryFields(): void;
|
|
76
|
-
/**
|
|
77
|
-
* Validates that the fee field is defined
|
|
78
|
-
*/
|
|
79
|
-
private validateFee;
|
|
80
|
-
/**
|
|
81
|
-
* Validates that the source field is defined
|
|
82
|
-
*/
|
|
83
|
-
private validateSource;
|
|
84
|
-
/**
|
|
85
|
-
* Validates that the given key is not already in this._multiSignerKeyPairs
|
|
86
|
-
*
|
|
87
|
-
* @param {BaseKey} key - The key to check
|
|
88
|
-
*/
|
|
89
|
-
private checkDuplicatedKeys;
|
|
90
|
-
/** @inheritdoc */
|
|
91
|
-
protected get transaction(): Transaction;
|
|
92
|
-
/** @inheritdoc */
|
|
93
|
-
protected set transaction(transaction: Transaction);
|
|
94
|
-
/**
|
|
95
|
-
* Get the chain name for the coin environment
|
|
96
|
-
*/
|
|
97
|
-
get chainName(): string;
|
|
98
|
-
/**
|
|
99
|
-
* Generate a DeployParams instance with the transaction data
|
|
100
|
-
*
|
|
101
|
-
* @returns {DeployUtil.DeployParams}
|
|
102
|
-
*/
|
|
103
|
-
private getDeployParams;
|
|
104
|
-
/**
|
|
105
|
-
* Generate the session for the Deploy according to the transactionType.
|
|
106
|
-
*
|
|
107
|
-
* @returns {DeployUtil.ExecutableDeployItem}
|
|
108
|
-
*/
|
|
109
|
-
private getSession;
|
|
110
|
-
/**
|
|
111
|
-
* Checks whether the transaction has the owner signature
|
|
112
|
-
*
|
|
113
|
-
* @param {string} pub - public key of the signer
|
|
114
|
-
* @returns {boolean} true if the pub key already signed th transaction
|
|
115
|
-
* @private
|
|
116
|
-
*/
|
|
117
|
-
private isTransactionSignedByPub;
|
|
118
|
-
/**
|
|
119
|
-
* Add signatures to the transaction
|
|
120
|
-
*
|
|
121
|
-
* @private
|
|
122
|
-
*/
|
|
123
|
-
private processSigning;
|
|
124
|
-
}
|
|
125
|
-
//# sourceMappingURL=transactionBuilder.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transactionBuilder.d.ts","sourceRoot":"","sources":["../../../../src/coin/cspr/transactionBuilder.ts"],"names":[],"mappings":"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"}
|