@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 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/coin/algo/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,KAAK,SAAS,MAAM,UAAU,CAAC;AAEtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,CAAC;AACrB,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,CAAC"}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
-
}) : (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
-
}) : function(o, v) {
|
|
12
|
-
o["default"] = v;
|
|
13
|
-
});
|
|
14
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
-
if (mod && mod.__esModule) return mod;
|
|
16
|
-
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
-
__setModuleDefault(result, mod);
|
|
19
|
-
return result;
|
|
20
|
-
};
|
|
21
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
22
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
23
|
-
};
|
|
24
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
-
exports.algoUtils = exports.Interface = exports.AddressValidationError = exports.InsufficientFeeError = exports.TransactionBuilderFactory = exports.AssetTransferBuilder = exports.Transaction = exports.KeyRegistrationBuilder = exports.TransferBuilder = exports.TransactionBuilder = exports.KeyPair = void 0;
|
|
26
|
-
var utils_1 = __importDefault(require("./utils"));
|
|
27
|
-
exports.algoUtils = utils_1.default;
|
|
28
|
-
var Interface = __importStar(require("./ifaces"));
|
|
29
|
-
exports.Interface = Interface;
|
|
30
|
-
var keyPair_1 = require("./keyPair");
|
|
31
|
-
Object.defineProperty(exports, "KeyPair", { enumerable: true, get: function () { return keyPair_1.KeyPair; } });
|
|
32
|
-
var transactionBuilder_1 = require("./transactionBuilder");
|
|
33
|
-
Object.defineProperty(exports, "TransactionBuilder", { enumerable: true, get: function () { return transactionBuilder_1.TransactionBuilder; } });
|
|
34
|
-
var transferBuilder_1 = require("./transferBuilder");
|
|
35
|
-
Object.defineProperty(exports, "TransferBuilder", { enumerable: true, get: function () { return transferBuilder_1.TransferBuilder; } });
|
|
36
|
-
var keyRegistrationBuilder_1 = require("./keyRegistrationBuilder");
|
|
37
|
-
Object.defineProperty(exports, "KeyRegistrationBuilder", { enumerable: true, get: function () { return keyRegistrationBuilder_1.KeyRegistrationBuilder; } });
|
|
38
|
-
var transaction_1 = require("./transaction");
|
|
39
|
-
Object.defineProperty(exports, "Transaction", { enumerable: true, get: function () { return transaction_1.Transaction; } });
|
|
40
|
-
var assetTransferBuilder_1 = require("./assetTransferBuilder");
|
|
41
|
-
Object.defineProperty(exports, "AssetTransferBuilder", { enumerable: true, get: function () { return assetTransferBuilder_1.AssetTransferBuilder; } });
|
|
42
|
-
var transactionBuilderFactory_1 = require("./transactionBuilderFactory");
|
|
43
|
-
Object.defineProperty(exports, "TransactionBuilderFactory", { enumerable: true, get: function () { return transactionBuilderFactory_1.TransactionBuilderFactory; } });
|
|
44
|
-
var errors_1 = require("./errors");
|
|
45
|
-
Object.defineProperty(exports, "InsufficientFeeError", { enumerable: true, get: function () { return errors_1.InsufficientFeeError; } });
|
|
46
|
-
Object.defineProperty(exports, "AddressValidationError", { enumerable: true, get: function () { return errors_1.AddressValidationError; } });
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29pbi9hbGdvL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxrREFBNEI7QUFZVixvQkFaWCxlQUFLLENBWWU7QUFYM0Isa0RBQXNDO0FBVTdCLDhCQUFTO0FBUmxCLHFDQUFvQztBQUEzQixrR0FBQSxPQUFPLE9BQUE7QUFDaEIsMkRBQTBEO0FBQWpELHdIQUFBLGtCQUFrQixPQUFBO0FBQzNCLHFEQUFvRDtBQUEzQyxrSEFBQSxlQUFlLE9BQUE7QUFDeEIsbUVBQWtFO0FBQXpELGdJQUFBLHNCQUFzQixPQUFBO0FBQy9CLDZDQUE0QztBQUFuQywwR0FBQSxXQUFXLE9BQUE7QUFDcEIsK0RBQThEO0FBQXJELDRIQUFBLG9CQUFvQixPQUFBO0FBQzdCLHlFQUF3RTtBQUEvRCxzSUFBQSx5QkFBeUIsT0FBQTtBQUNsQyxtQ0FBd0U7QUFBL0QsOEdBQUEsb0JBQW9CLE9BQUE7QUFBRSxnSEFBQSxzQkFBc0IsT0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB1dGlscyBmcm9tICcuL3V0aWxzJztcbmltcG9ydCAqIGFzIEludGVyZmFjZSBmcm9tICcuL2lmYWNlcyc7XG5cbmV4cG9ydCB7IEtleVBhaXIgfSBmcm9tICcuL2tleVBhaXInO1xuZXhwb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXInO1xuZXhwb3J0IHsgVHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi90cmFuc2ZlckJ1aWxkZXInO1xuZXhwb3J0IHsgS2V5UmVnaXN0cmF0aW9uQnVpbGRlciB9IGZyb20gJy4va2V5UmVnaXN0cmF0aW9uQnVpbGRlcic7XG5leHBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuZXhwb3J0IHsgQXNzZXRUcmFuc2ZlckJ1aWxkZXIgfSBmcm9tICcuL2Fzc2V0VHJhbnNmZXJCdWlsZGVyJztcbmV4cG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnknO1xuZXhwb3J0IHsgSW5zdWZmaWNpZW50RmVlRXJyb3IsIEFkZHJlc3NWYWxpZGF0aW9uRXJyb3IgfSBmcm9tICcuL2Vycm9ycyc7XG5leHBvcnQgeyBJbnRlcmZhY2UgfTtcbmV4cG9ydCB7IHV0aWxzIGFzIGFsZ29VdGlscyB9O1xuIl19
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { Ed25519KeyPair } from '../baseCoin';
|
|
2
|
-
import { DefaultKeys, KeyPairOptions } from '../baseCoin/iface';
|
|
3
|
-
export declare class KeyPair extends Ed25519KeyPair {
|
|
4
|
-
/**
|
|
5
|
-
* Public constructor. By default, creates a key pair with a random master seed.
|
|
6
|
-
*
|
|
7
|
-
* @param { KeyPairOptions } source Either a master seed, a private key, or a public key
|
|
8
|
-
*/
|
|
9
|
-
constructor(source?: KeyPairOptions);
|
|
10
|
-
/** @inheritdoc */
|
|
11
|
-
recordKeysFromPrivateKeyInProtocolFormat(prv: string): DefaultKeys;
|
|
12
|
-
/** @inheritdoc */
|
|
13
|
-
recordKeysFromPublicKeyInProtocolFormat(pub: string): DefaultKeys;
|
|
14
|
-
/** @inheritdoc */
|
|
15
|
-
getAddress(): string;
|
|
16
|
-
/** @inheritdoc */
|
|
17
|
-
getKeys(): DefaultKeys;
|
|
18
|
-
/**
|
|
19
|
-
* Getting the base64 private key for signing an algo transaction.
|
|
20
|
-
*
|
|
21
|
-
* @returns {Uint8Array} base64 private key
|
|
22
|
-
* @see https://developer.algorand.org/docs/features/accounts/#transformation-private-key-to-base64-private-key
|
|
23
|
-
*/
|
|
24
|
-
getSigningKey(): Uint8Array;
|
|
25
|
-
}
|
|
26
|
-
//# sourceMappingURL=keyPair.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"keyPair.d.ts","sourceRoot":"","sources":["../../../../src/coin/algo/keyPair.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAIhE,qBAAa,OAAQ,SAAQ,cAAc;IACzC;;;;OAIG;gBACS,MAAM,CAAC,EAAE,cAAc;IAInC,kBAAkB;IAClB,wCAAwC,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW;IAOlE,kBAAkB;IAClB,uCAAuC,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW;IAKjE,kBAAkB;IAClB,UAAU,IAAI,MAAM;IAIpB,kBAAkB;IAClB,OAAO,IAAI,WAAW;IAYtB;;;;;OAKG;IACH,aAAa,IAAI,UAAU;CAM5B"}
|
|
@@ -1,95 +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
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
37
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
38
|
-
};
|
|
39
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
-
exports.KeyPair = void 0;
|
|
41
|
-
var algosdk_1 = __importStar(require("algosdk"));
|
|
42
|
-
var baseCoin_1 = require("../baseCoin");
|
|
43
|
-
var errors_1 = require("../baseCoin/errors");
|
|
44
|
-
var utils_1 = __importDefault(require("./utils"));
|
|
45
|
-
var KeyPair = /** @class */ (function (_super) {
|
|
46
|
-
__extends(KeyPair, _super);
|
|
47
|
-
/**
|
|
48
|
-
* Public constructor. By default, creates a key pair with a random master seed.
|
|
49
|
-
*
|
|
50
|
-
* @param { KeyPairOptions } source Either a master seed, a private key, or a public key
|
|
51
|
-
*/
|
|
52
|
-
function KeyPair(source) {
|
|
53
|
-
return _super.call(this, source) || this;
|
|
54
|
-
}
|
|
55
|
-
/** @inheritdoc */
|
|
56
|
-
KeyPair.prototype.recordKeysFromPrivateKeyInProtocolFormat = function (prv) {
|
|
57
|
-
var decodedSeed = utils_1.default.decodeSeed(prv);
|
|
58
|
-
var bufferFromSeed = Buffer.from(decodedSeed.seed);
|
|
59
|
-
return utils_1.default.keyPairFromSeed(bufferFromSeed).keyPair;
|
|
60
|
-
};
|
|
61
|
-
/** @inheritdoc */
|
|
62
|
-
KeyPair.prototype.recordKeysFromPublicKeyInProtocolFormat = function (pub) {
|
|
63
|
-
var publicKey = algosdk_1.default.decodeAddress(pub).publicKey;
|
|
64
|
-
return { pub: utils_1.default.toHex(publicKey) };
|
|
65
|
-
};
|
|
66
|
-
/** @inheritdoc */
|
|
67
|
-
KeyPair.prototype.getAddress = function () {
|
|
68
|
-
return algosdk_1.encodeAddress(utils_1.default.toUint8Array(this.keyPair.pub));
|
|
69
|
-
};
|
|
70
|
-
/** @inheritdoc */
|
|
71
|
-
KeyPair.prototype.getKeys = function () {
|
|
72
|
-
// TODO(https://bitgoinc.atlassian.net/browse/STLX-6062): refactor this method
|
|
73
|
-
// should return the pub and prv in the Algorand encoded format
|
|
74
|
-
var result = { pub: this.keyPair.pub };
|
|
75
|
-
if (this.keyPair.prv) {
|
|
76
|
-
result.prv = this.keyPair.prv;
|
|
77
|
-
}
|
|
78
|
-
return result;
|
|
79
|
-
};
|
|
80
|
-
/**
|
|
81
|
-
* Getting the base64 private key for signing an algo transaction.
|
|
82
|
-
*
|
|
83
|
-
* @returns {Uint8Array} base64 private key
|
|
84
|
-
* @see https://developer.algorand.org/docs/features/accounts/#transformation-private-key-to-base64-private-key
|
|
85
|
-
*/
|
|
86
|
-
KeyPair.prototype.getSigningKey = function () {
|
|
87
|
-
if (!this.keyPair.prv) {
|
|
88
|
-
throw new errors_1.InvalidKey('Private key undefined');
|
|
89
|
-
}
|
|
90
|
-
return utils_1.default.toUint8Array(this.keyPair.prv + this.keyPair.pub);
|
|
91
|
-
};
|
|
92
|
-
return KeyPair;
|
|
93
|
-
}(baseCoin_1.Ed25519KeyPair));
|
|
94
|
-
exports.KeyPair = KeyPair;
|
|
95
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5UGFpci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2luL2FsZ28va2V5UGFpci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsaURBQWlEO0FBQ2pELHdDQUE2QztBQUU3Qyw2Q0FBZ0Q7QUFDaEQsa0RBQTRCO0FBRTVCO0lBQTZCLDJCQUFjO0lBQ3pDOzs7O09BSUc7SUFDSCxpQkFBWSxNQUF1QjtlQUNqQyxrQkFBTSxNQUFNLENBQUM7SUFDZixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLDBEQUF3QyxHQUF4QyxVQUF5QyxHQUFXO1FBQ2xELElBQU0sV0FBVyxHQUFHLGVBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDMUMsSUFBTSxjQUFjLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFckQsT0FBTyxlQUFLLENBQUMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztJQUN2RCxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLHlEQUF1QyxHQUF2QyxVQUF3QyxHQUFXO1FBQ2pELElBQU0sU0FBUyxHQUFHLGlCQUFPLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUN2RCxPQUFPLEVBQUUsR0FBRyxFQUFFLGVBQUssQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLDRCQUFVLEdBQVY7UUFDRSxPQUFPLHVCQUFhLENBQUMsZUFBSyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELGtCQUFrQjtJQUNsQix5QkFBTyxHQUFQO1FBQ0UsOEVBQThFO1FBQzlFLCtEQUErRDtRQUMvRCxJQUFNLE1BQU0sR0FBZ0IsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUV0RCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFO1lBQ3BCLE1BQU0sQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7U0FDL0I7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCwrQkFBYSxHQUFiO1FBQ0UsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFO1lBQ3JCLE1BQU0sSUFBSSxtQkFBVSxDQUFDLHVCQUF1QixDQUFDLENBQUM7U0FDL0M7UUFDRCxPQUFPLGVBQUssQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBQ0gsY0FBQztBQUFELENBQUMsQUF0REQsQ0FBNkIseUJBQWMsR0FzRDFDO0FBdERZLDBCQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFsZ29zZGssIHsgZW5jb2RlQWRkcmVzcyB9IGZyb20gJ2FsZ29zZGsnO1xuaW1wb3J0IHsgRWQyNTUxOUtleVBhaXIgfSBmcm9tICcuLi9iYXNlQ29pbic7XG5pbXBvcnQgeyBEZWZhdWx0S2V5cywgS2V5UGFpck9wdGlvbnMgfSBmcm9tICcuLi9iYXNlQ29pbi9pZmFjZSc7XG5pbXBvcnQgeyBJbnZhbGlkS2V5IH0gZnJvbSAnLi4vYmFzZUNvaW4vZXJyb3JzJztcbmltcG9ydCB1dGlscyBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNsYXNzIEtleVBhaXIgZXh0ZW5kcyBFZDI1NTE5S2V5UGFpciB7XG4gIC8qKlxuICAgKiBQdWJsaWMgY29uc3RydWN0b3IuIEJ5IGRlZmF1bHQsIGNyZWF0ZXMgYSBrZXkgcGFpciB3aXRoIGEgcmFuZG9tIG1hc3RlciBzZWVkLlxuICAgKlxuICAgKiBAcGFyYW0geyBLZXlQYWlyT3B0aW9ucyB9IHNvdXJjZSBFaXRoZXIgYSBtYXN0ZXIgc2VlZCwgYSBwcml2YXRlIGtleSwgb3IgYSBwdWJsaWMga2V5XG4gICAqL1xuICBjb25zdHJ1Y3Rvcihzb3VyY2U/OiBLZXlQYWlyT3B0aW9ucykge1xuICAgIHN1cGVyKHNvdXJjZSk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcmVjb3JkS2V5c0Zyb21Qcml2YXRlS2V5SW5Qcm90b2NvbEZvcm1hdChwcnY6IHN0cmluZyk6IERlZmF1bHRLZXlzIHtcbiAgICBjb25zdCBkZWNvZGVkU2VlZCA9IHV0aWxzLmRlY29kZVNlZWQocHJ2KTtcbiAgICBjb25zdCBidWZmZXJGcm9tU2VlZCA9IEJ1ZmZlci5mcm9tKGRlY29kZWRTZWVkLnNlZWQpO1xuXG4gICAgcmV0dXJuIHV0aWxzLmtleVBhaXJGcm9tU2VlZChidWZmZXJGcm9tU2VlZCkua2V5UGFpcjtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICByZWNvcmRLZXlzRnJvbVB1YmxpY0tleUluUHJvdG9jb2xGb3JtYXQocHViOiBzdHJpbmcpOiBEZWZhdWx0S2V5cyB7XG4gICAgY29uc3QgcHVibGljS2V5ID0gYWxnb3Nkay5kZWNvZGVBZGRyZXNzKHB1YikucHVibGljS2V5O1xuICAgIHJldHVybiB7IHB1YjogdXRpbHMudG9IZXgocHVibGljS2V5KSB9O1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldEFkZHJlc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZW5jb2RlQWRkcmVzcyh1dGlscy50b1VpbnQ4QXJyYXkodGhpcy5rZXlQYWlyLnB1YikpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldEtleXMoKTogRGVmYXVsdEtleXMge1xuICAgIC8vIFRPRE8oaHR0cHM6Ly9iaXRnb2luYy5hdGxhc3NpYW4ubmV0L2Jyb3dzZS9TVExYLTYwNjIpOiByZWZhY3RvciB0aGlzIG1ldGhvZFxuICAgIC8vIHNob3VsZCByZXR1cm4gdGhlIHB1YiBhbmQgcHJ2IGluIHRoZSBBbGdvcmFuZCBlbmNvZGVkIGZvcm1hdFxuICAgIGNvbnN0IHJlc3VsdDogRGVmYXVsdEtleXMgPSB7IHB1YjogdGhpcy5rZXlQYWlyLnB1YiB9O1xuXG4gICAgaWYgKHRoaXMua2V5UGFpci5wcnYpIHtcbiAgICAgIHJlc3VsdC5wcnYgPSB0aGlzLmtleVBhaXIucHJ2O1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogR2V0dGluZyB0aGUgYmFzZTY0IHByaXZhdGUga2V5IGZvciBzaWduaW5nIGFuIGFsZ28gdHJhbnNhY3Rpb24uXG4gICAqXG4gICAqIEByZXR1cm5zIHtVaW50OEFycmF5fSBiYXNlNjQgcHJpdmF0ZSBrZXlcbiAgICogQHNlZSBodHRwczovL2RldmVsb3Blci5hbGdvcmFuZC5vcmcvZG9jcy9mZWF0dXJlcy9hY2NvdW50cy8jdHJhbnNmb3JtYXRpb24tcHJpdmF0ZS1rZXktdG8tYmFzZTY0LXByaXZhdGUta2V5XG4gICAqL1xuICBnZXRTaWduaW5nS2V5KCk6IFVpbnQ4QXJyYXkge1xuICAgIGlmICghdGhpcy5rZXlQYWlyLnBydikge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRLZXkoJ1ByaXZhdGUga2V5IHVuZGVmaW5lZCcpO1xuICAgIH1cbiAgICByZXR1cm4gdXRpbHMudG9VaW50OEFycmF5KHRoaXMua2V5UGFpci5wcnYgKyB0aGlzLmtleVBhaXIucHViKTtcbiAgfVxufVxuIl19
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
import algosdk from 'algosdk';
|
|
2
|
-
import { BaseCoin as CoinConfig } from '@bitgo/statics';
|
|
3
|
-
import { TransactionType } from '../baseCoin';
|
|
4
|
-
import { TransactionBuilder } from './transactionBuilder';
|
|
5
|
-
import { Transaction } from './transaction';
|
|
6
|
-
export declare class KeyRegistrationBuilder extends TransactionBuilder {
|
|
7
|
-
protected _voteKey: string;
|
|
8
|
-
protected _selectionKey: string;
|
|
9
|
-
protected _voteFirst: number;
|
|
10
|
-
protected _voteLast: number;
|
|
11
|
-
protected _voteKeyDilution: number;
|
|
12
|
-
protected _nonParticipation: boolean;
|
|
13
|
-
protected _stateProofKey: string;
|
|
14
|
-
constructor(coinConfig: Readonly<CoinConfig>);
|
|
15
|
-
/**
|
|
16
|
-
* Sets the vote key
|
|
17
|
-
*
|
|
18
|
-
* @returns {KeyRegistrationBuilder} This Key Registration builder.
|
|
19
|
-
*
|
|
20
|
-
* @param {string} key The root participation public key. See Generate a Participation Key to learn more.
|
|
21
|
-
* https://developer.algorand.org/docs/reference/transactions/#key-registration-transaction
|
|
22
|
-
*/
|
|
23
|
-
voteKey(key: string): KeyRegistrationBuilder;
|
|
24
|
-
/**
|
|
25
|
-
* Sets the selection key
|
|
26
|
-
*
|
|
27
|
-
* @returns {KeyRegistrationBuilder} This Key Registration builder.
|
|
28
|
-
*
|
|
29
|
-
* @param {string} key The VRF public key for the account.
|
|
30
|
-
* https://developer.algorand.org/docs/reference/transactions/#key-registration-transaction
|
|
31
|
-
*/
|
|
32
|
-
selectionKey(key: string): KeyRegistrationBuilder;
|
|
33
|
-
/**
|
|
34
|
-
* Sets the stateProof key
|
|
35
|
-
*
|
|
36
|
-
* @returns {KeyRegistrationBuilder} This Key Registration builder.
|
|
37
|
-
*
|
|
38
|
-
* @param {string} key The stateproof key. See consensus for more information.
|
|
39
|
-
* https://developer.algorand.org/docs/get-details/algorand_consensus/?from_query=state#state-proof-keys
|
|
40
|
-
*/
|
|
41
|
-
stateProofKey(key: string): KeyRegistrationBuilder;
|
|
42
|
-
/**
|
|
43
|
-
*Sets the vote first round
|
|
44
|
-
*
|
|
45
|
-
* @returns {KeyRegistrationBuilder} This Key Registration builder.
|
|
46
|
-
*
|
|
47
|
-
* @param {number} round The first round that the participation key is valid. Not to be confused with the FirstValid round of the keyreg transaction.
|
|
48
|
-
* https://developer.algorand.org/docs/reference/transactions/#key-registration-transaction
|
|
49
|
-
*/
|
|
50
|
-
voteFirst(round: number): KeyRegistrationBuilder;
|
|
51
|
-
/**
|
|
52
|
-
* Sets the vote last round
|
|
53
|
-
*
|
|
54
|
-
* @returns {KeyRegistrationBuilder} This Key Registration builder.
|
|
55
|
-
*
|
|
56
|
-
* A recommended range is 3,000,000 rounds.
|
|
57
|
-
*
|
|
58
|
-
* @param {number} round No theoretical limit.
|
|
59
|
-
* https://developer.algorand.org/docs/run-a-node/participate/generate_keys/
|
|
60
|
-
*/
|
|
61
|
-
voteLast(round: number): KeyRegistrationBuilder;
|
|
62
|
-
/**
|
|
63
|
-
* Sets the vote key dilution
|
|
64
|
-
*
|
|
65
|
-
* @returns {KeyRegistrationBuilder} This Key Registration builder.
|
|
66
|
-
*
|
|
67
|
-
* Defaults to 10,000
|
|
68
|
-
*
|
|
69
|
-
* @param {number} size [10000]. To reduce the size of the participation key, set the key dilution value to roughly the square root of the range that the partkey is valid for.
|
|
70
|
-
* https://developer.algorand.org/docs/run-a-node/participate/generate_keys/#generate-the-participation-key-with-goal
|
|
71
|
-
* @param size
|
|
72
|
-
*/
|
|
73
|
-
voteKeyDilution(size?: number): KeyRegistrationBuilder;
|
|
74
|
-
/**
|
|
75
|
-
* Sets the non participation flag
|
|
76
|
-
*
|
|
77
|
-
* @returns {KeyRegistrationBuilder} This Key Registration builder.
|
|
78
|
-
*
|
|
79
|
-
* @param {boolean} nonParticipation All new Algorand accounts are participating by default.
|
|
80
|
-
* This means that they earn rewards. Mark an account nonparticipating by setting this value to true and this account
|
|
81
|
-
* will no longer earn rewards NEVER.
|
|
82
|
-
* https://developer.algorand.org/docs/reference/transactions/#key-registration-transaction
|
|
83
|
-
*/
|
|
84
|
-
nonParticipation(nonParticipation: boolean): KeyRegistrationBuilder;
|
|
85
|
-
protected buildAlgoTxn(): algosdk.Transaction;
|
|
86
|
-
private buildOfflineKeyRegTransaction;
|
|
87
|
-
private buildOnlineKeyRegTransaction;
|
|
88
|
-
private buildNonParticipationKeyRegTransaction;
|
|
89
|
-
protected get transactionType(): TransactionType;
|
|
90
|
-
/** @inheritdoc */
|
|
91
|
-
protected fromImplementation(rawTransaction: Uint8Array | string): Transaction;
|
|
92
|
-
/** @inheritdoc */
|
|
93
|
-
validateRawTransaction(rawTransaction: Uint8Array | string): void;
|
|
94
|
-
private isNonParticipationKeyRegAlgoSDKTransaction;
|
|
95
|
-
private isNonParticipationKeyRegAccountLibTransaction;
|
|
96
|
-
private isOnlineKeyRegAlgoSDKTransaction;
|
|
97
|
-
private isOnlineKeyRegAccountLibTransaction;
|
|
98
|
-
private isOfflineKeyRegAlgoSDKTransaction;
|
|
99
|
-
private isOfflineKeyRegAccountLibTransaction;
|
|
100
|
-
/** @inheritdoc */
|
|
101
|
-
validateTransaction(transaction: Transaction): void;
|
|
102
|
-
private validateFields;
|
|
103
|
-
}
|
|
104
|
-
//# sourceMappingURL=keyRegistrationBuilder.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"keyRegistrationBuilder.d.ts","sourceRoot":"","sources":["../../../../src/coin/algo/keyRegistrationBuilder.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,qBAAa,sBAAuB,SAAQ,kBAAkB;IAC5D,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,aAAa,EAAE,MAAM,CAAC;IAChC,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAC;IACnC,SAAS,CAAC,iBAAiB,EAAE,OAAO,CAAC;IACrC,SAAS,CAAC,cAAc,EAAE,MAAM,CAAC;gBAErB,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI5C;;;;;;;OAOG;IACH,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB;IAK5C;;;;;;;OAOG;IACH,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB;IAKjD;;;;;;;OAOG;IACH,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB;IAMlD;;;;;;;OAOG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,sBAAsB;IAOhD;;;;;;;;;OASG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,sBAAsB;IAO/C;;;;;;;;;;OAUG;IACH,eAAe,CAAC,IAAI,SAAQ,GAAG,sBAAsB;IAOrD;;;;;;;;;OASG;IACH,gBAAgB,CAAC,gBAAgB,EAAE,OAAO,GAAG,sBAAsB;IAMnE,SAAS,CAAC,YAAY,IAAI,OAAO,CAAC,WAAW;IAQ7C,OAAO,CAAC,6BAA6B;IAarC,OAAO,CAAC,4BAA4B;IAgBpC,OAAO,CAAC,sCAAsC;IAe9C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,UAAU,GAAG,MAAM,GAAG,WAAW;IAqB9E,kBAAkB;IAClB,sBAAsB,CAAC,cAAc,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI;IAqBjE,OAAO,CAAC,0CAA0C;IAIlD,OAAO,CAAC,6CAA6C;IAIrD,OAAO,CAAC,gCAAgC;IAMxC,OAAO,CAAC,mCAAmC;IAI3C,OAAO,CAAC,iCAAiC;IAYzC,OAAO,CAAC,oCAAoC;IAY5C,kBAAkB;IAClB,mBAAmB,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IA6BnD,OAAO,CAAC,cAAc;CAqBvB"}
|
|
@@ -1,262 +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 __importDefault = (this && this.__importDefault) || function (mod) {
|
|
18
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
19
|
-
};
|
|
20
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
-
exports.KeyRegistrationBuilder = void 0;
|
|
22
|
-
var bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
23
|
-
var algosdk_1 = __importDefault(require("algosdk"));
|
|
24
|
-
var baseCoin_1 = require("../baseCoin");
|
|
25
|
-
var errors_1 = require("../baseCoin/errors");
|
|
26
|
-
var transactionBuilder_1 = require("./transactionBuilder");
|
|
27
|
-
var txnSchema_1 = require("./txnSchema");
|
|
28
|
-
var utils_1 = __importDefault(require("./utils"));
|
|
29
|
-
var KeyRegistrationBuilder = /** @class */ (function (_super) {
|
|
30
|
-
__extends(KeyRegistrationBuilder, _super);
|
|
31
|
-
function KeyRegistrationBuilder(coinConfig) {
|
|
32
|
-
return _super.call(this, coinConfig) || this;
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Sets the vote key
|
|
36
|
-
*
|
|
37
|
-
* @returns {KeyRegistrationBuilder} This Key Registration builder.
|
|
38
|
-
*
|
|
39
|
-
* @param {string} key The root participation public key. See Generate a Participation Key to learn more.
|
|
40
|
-
* https://developer.algorand.org/docs/reference/transactions/#key-registration-transaction
|
|
41
|
-
*/
|
|
42
|
-
KeyRegistrationBuilder.prototype.voteKey = function (key) {
|
|
43
|
-
this._voteKey = key;
|
|
44
|
-
return this;
|
|
45
|
-
};
|
|
46
|
-
/**
|
|
47
|
-
* Sets the selection key
|
|
48
|
-
*
|
|
49
|
-
* @returns {KeyRegistrationBuilder} This Key Registration builder.
|
|
50
|
-
*
|
|
51
|
-
* @param {string} key The VRF public key for the account.
|
|
52
|
-
* https://developer.algorand.org/docs/reference/transactions/#key-registration-transaction
|
|
53
|
-
*/
|
|
54
|
-
KeyRegistrationBuilder.prototype.selectionKey = function (key) {
|
|
55
|
-
this._selectionKey = key;
|
|
56
|
-
return this;
|
|
57
|
-
};
|
|
58
|
-
/**
|
|
59
|
-
* Sets the stateProof key
|
|
60
|
-
*
|
|
61
|
-
* @returns {KeyRegistrationBuilder} This Key Registration builder.
|
|
62
|
-
*
|
|
63
|
-
* @param {string} key The stateproof key. See consensus for more information.
|
|
64
|
-
* https://developer.algorand.org/docs/get-details/algorand_consensus/?from_query=state#state-proof-keys
|
|
65
|
-
*/
|
|
66
|
-
KeyRegistrationBuilder.prototype.stateProofKey = function (key) {
|
|
67
|
-
utils_1.default.validateBase64(key);
|
|
68
|
-
this._stateProofKey = key;
|
|
69
|
-
return this;
|
|
70
|
-
};
|
|
71
|
-
/**
|
|
72
|
-
*Sets the vote first round
|
|
73
|
-
*
|
|
74
|
-
* @returns {KeyRegistrationBuilder} This Key Registration builder.
|
|
75
|
-
*
|
|
76
|
-
* @param {number} round The first round that the participation key is valid. Not to be confused with the FirstValid round of the keyreg transaction.
|
|
77
|
-
* https://developer.algorand.org/docs/reference/transactions/#key-registration-transaction
|
|
78
|
-
*/
|
|
79
|
-
KeyRegistrationBuilder.prototype.voteFirst = function (round) {
|
|
80
|
-
this.validateValue(new bignumber_js_1.default(round));
|
|
81
|
-
this._voteFirst = round;
|
|
82
|
-
return this;
|
|
83
|
-
};
|
|
84
|
-
/**
|
|
85
|
-
* Sets the vote last round
|
|
86
|
-
*
|
|
87
|
-
* @returns {KeyRegistrationBuilder} This Key Registration builder.
|
|
88
|
-
*
|
|
89
|
-
* A recommended range is 3,000,000 rounds.
|
|
90
|
-
*
|
|
91
|
-
* @param {number} round No theoretical limit.
|
|
92
|
-
* https://developer.algorand.org/docs/run-a-node/participate/generate_keys/
|
|
93
|
-
*/
|
|
94
|
-
KeyRegistrationBuilder.prototype.voteLast = function (round) {
|
|
95
|
-
this.validateValue(new bignumber_js_1.default(round));
|
|
96
|
-
this._voteLast = round;
|
|
97
|
-
return this;
|
|
98
|
-
};
|
|
99
|
-
/**
|
|
100
|
-
* Sets the vote key dilution
|
|
101
|
-
*
|
|
102
|
-
* @returns {KeyRegistrationBuilder} This Key Registration builder.
|
|
103
|
-
*
|
|
104
|
-
* Defaults to 10,000
|
|
105
|
-
*
|
|
106
|
-
* @param {number} size [10000]. To reduce the size of the participation key, set the key dilution value to roughly the square root of the range that the partkey is valid for.
|
|
107
|
-
* https://developer.algorand.org/docs/run-a-node/participate/generate_keys/#generate-the-participation-key-with-goal
|
|
108
|
-
* @param size
|
|
109
|
-
*/
|
|
110
|
-
KeyRegistrationBuilder.prototype.voteKeyDilution = function (size) {
|
|
111
|
-
if (size === void 0) { size = 10000; }
|
|
112
|
-
this.validateValue(new bignumber_js_1.default(size));
|
|
113
|
-
this._voteKeyDilution = size;
|
|
114
|
-
return this;
|
|
115
|
-
};
|
|
116
|
-
/**
|
|
117
|
-
* Sets the non participation flag
|
|
118
|
-
*
|
|
119
|
-
* @returns {KeyRegistrationBuilder} This Key Registration builder.
|
|
120
|
-
*
|
|
121
|
-
* @param {boolean} nonParticipation All new Algorand accounts are participating by default.
|
|
122
|
-
* This means that they earn rewards. Mark an account nonparticipating by setting this value to true and this account
|
|
123
|
-
* will no longer earn rewards NEVER.
|
|
124
|
-
* https://developer.algorand.org/docs/reference/transactions/#key-registration-transaction
|
|
125
|
-
*/
|
|
126
|
-
KeyRegistrationBuilder.prototype.nonParticipation = function (nonParticipation) {
|
|
127
|
-
this._nonParticipation = nonParticipation;
|
|
128
|
-
return this;
|
|
129
|
-
};
|
|
130
|
-
KeyRegistrationBuilder.prototype.buildAlgoTxn = function () {
|
|
131
|
-
return this.isOfflineKeyRegAccountLibTransaction()
|
|
132
|
-
? this.buildOfflineKeyRegTransaction()
|
|
133
|
-
: this.isNonParticipationKeyRegAccountLibTransaction()
|
|
134
|
-
? this.buildNonParticipationKeyRegTransaction()
|
|
135
|
-
: this.buildOnlineKeyRegTransaction();
|
|
136
|
-
};
|
|
137
|
-
KeyRegistrationBuilder.prototype.buildOfflineKeyRegTransaction = function () {
|
|
138
|
-
return algosdk_1.default.makeKeyRegistrationTxnWithSuggestedParams(this._sender, this._note, undefined, // voteKey param
|
|
139
|
-
undefined, // selectionKey param
|
|
140
|
-
undefined, // voteFirst param
|
|
141
|
-
undefined, // voteLast param
|
|
142
|
-
undefined, // voteKeyDilution param
|
|
143
|
-
this.suggestedParams);
|
|
144
|
-
};
|
|
145
|
-
KeyRegistrationBuilder.prototype.buildOnlineKeyRegTransaction = function () {
|
|
146
|
-
return algosdk_1.default.makeKeyRegistrationTxnWithSuggestedParams(this._sender, this._note, this._voteKey, this._selectionKey, this._voteFirst, this._voteLast, this._voteKeyDilution, this.suggestedParams, undefined, // reKeyTo param
|
|
147
|
-
undefined, // nonParticipation param
|
|
148
|
-
this._stateProofKey);
|
|
149
|
-
};
|
|
150
|
-
KeyRegistrationBuilder.prototype.buildNonParticipationKeyRegTransaction = function () {
|
|
151
|
-
return algosdk_1.default.makeKeyRegistrationTxnWithSuggestedParams(this._sender, this._note, undefined, // voteKey param
|
|
152
|
-
undefined, // selectionKey param
|
|
153
|
-
undefined, // voteFirst param
|
|
154
|
-
undefined, // voteLast param
|
|
155
|
-
undefined, // voteKeyDilution param
|
|
156
|
-
this.suggestedParams, this._reKeyTo, true);
|
|
157
|
-
};
|
|
158
|
-
Object.defineProperty(KeyRegistrationBuilder.prototype, "transactionType", {
|
|
159
|
-
get: function () {
|
|
160
|
-
return baseCoin_1.TransactionType.WalletInitialization;
|
|
161
|
-
},
|
|
162
|
-
enumerable: false,
|
|
163
|
-
configurable: true
|
|
164
|
-
});
|
|
165
|
-
/** @inheritdoc */
|
|
166
|
-
KeyRegistrationBuilder.prototype.fromImplementation = function (rawTransaction) {
|
|
167
|
-
var tx = _super.prototype.fromImplementation.call(this, rawTransaction);
|
|
168
|
-
var algoTxn = tx.getAlgoTransaction();
|
|
169
|
-
if (algoTxn) {
|
|
170
|
-
if (this.isNonParticipationKeyRegAlgoSDKTransaction(algoTxn)) {
|
|
171
|
-
this.nonParticipation(!!algoTxn.nonParticipation);
|
|
172
|
-
}
|
|
173
|
-
else if (this.isOnlineKeyRegAlgoSDKTransaction(algoTxn)) {
|
|
174
|
-
this.voteKey(algoTxn.voteKey.toString('base64'));
|
|
175
|
-
this.selectionKey(algoTxn.selectionKey.toString('base64'));
|
|
176
|
-
this.voteFirst(algoTxn.voteFirst);
|
|
177
|
-
this.voteLast(algoTxn.voteLast);
|
|
178
|
-
this.voteKeyDilution(algoTxn.voteKeyDilution);
|
|
179
|
-
if (algoTxn.stateProofKey) {
|
|
180
|
-
this.stateProofKey(algoTxn.stateProofKey.toString('base64'));
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
|
-
return tx;
|
|
185
|
-
};
|
|
186
|
-
/** @inheritdoc */
|
|
187
|
-
KeyRegistrationBuilder.prototype.validateRawTransaction = function (rawTransaction) {
|
|
188
|
-
var decodeTxn = utils_1.default.decodeAlgoTxn(rawTransaction);
|
|
189
|
-
var algoTxn = decodeTxn.txn;
|
|
190
|
-
if (algoTxn.type !== algosdk_1.default.TransactionType.keyreg) {
|
|
191
|
-
throw new errors_1.InvalidTransactionError("Invalid Transaction Type: " + algoTxn.type + ". Expected " + algosdk_1.default.TransactionType.keyreg);
|
|
192
|
-
}
|
|
193
|
-
if (this.isOnlineKeyRegAlgoSDKTransaction(algoTxn)) {
|
|
194
|
-
this.validateFields(algoTxn.voteKey.toString('base64'), algoTxn.selectionKey.toString('base64'), algoTxn.voteFirst, algoTxn.voteLast, algoTxn.voteKeyDilution, algoTxn.stateProofKey && algoTxn.stateProofKey.toString('base64'));
|
|
195
|
-
}
|
|
196
|
-
};
|
|
197
|
-
KeyRegistrationBuilder.prototype.isNonParticipationKeyRegAlgoSDKTransaction = function (algoTxn) {
|
|
198
|
-
return !!algoTxn.nonParticipation;
|
|
199
|
-
};
|
|
200
|
-
KeyRegistrationBuilder.prototype.isNonParticipationKeyRegAccountLibTransaction = function () {
|
|
201
|
-
return !!this._nonParticipation;
|
|
202
|
-
};
|
|
203
|
-
KeyRegistrationBuilder.prototype.isOnlineKeyRegAlgoSDKTransaction = function (algoTxn) {
|
|
204
|
-
return !(this.isOfflineKeyRegAlgoSDKTransaction(algoTxn) || this.isNonParticipationKeyRegAlgoSDKTransaction(algoTxn));
|
|
205
|
-
};
|
|
206
|
-
KeyRegistrationBuilder.prototype.isOnlineKeyRegAccountLibTransaction = function () {
|
|
207
|
-
return !(this.isOfflineKeyRegAccountLibTransaction() || this.isNonParticipationKeyRegAccountLibTransaction());
|
|
208
|
-
};
|
|
209
|
-
KeyRegistrationBuilder.prototype.isOfflineKeyRegAlgoSDKTransaction = function (algoTxn) {
|
|
210
|
-
return (!algoTxn.voteKey &&
|
|
211
|
-
!algoTxn.selectionKey &&
|
|
212
|
-
!algoTxn.voteFirst &&
|
|
213
|
-
!algoTxn.voteLast &&
|
|
214
|
-
!algoTxn.voteKeyDilution &&
|
|
215
|
-
!algoTxn.stateProofKey &&
|
|
216
|
-
!algoTxn.nonParticipation);
|
|
217
|
-
};
|
|
218
|
-
KeyRegistrationBuilder.prototype.isOfflineKeyRegAccountLibTransaction = function () {
|
|
219
|
-
return (!this._voteKey &&
|
|
220
|
-
!this._selectionKey &&
|
|
221
|
-
!this._voteFirst &&
|
|
222
|
-
!this._voteLast &&
|
|
223
|
-
!this._voteKeyDilution &&
|
|
224
|
-
!this._stateProofKey &&
|
|
225
|
-
!this._nonParticipation);
|
|
226
|
-
};
|
|
227
|
-
/** @inheritdoc */
|
|
228
|
-
KeyRegistrationBuilder.prototype.validateTransaction = function (transaction) {
|
|
229
|
-
_super.prototype.validateTransaction.call(this, transaction);
|
|
230
|
-
if (this.isOnlineKeyRegAccountLibTransaction()) {
|
|
231
|
-
// invalid offline will reach here
|
|
232
|
-
this.validateFields(this._voteKey, this._selectionKey, this._voteFirst, this._voteLast, this._voteKeyDilution, this._stateProofKey);
|
|
233
|
-
}
|
|
234
|
-
else {
|
|
235
|
-
// offline or nonparticipation transaction
|
|
236
|
-
if (this._voteKey ||
|
|
237
|
-
this._selectionKey ||
|
|
238
|
-
this._voteFirst ||
|
|
239
|
-
this._voteLast ||
|
|
240
|
-
this._voteKeyDilution ||
|
|
241
|
-
this._stateProofKey) {
|
|
242
|
-
throw new errors_1.InvalidTransactionError('VoteKey, SelectionKey, VoteFirst, VoteLast, VoteKeyDilution, StateProofKey fields cannot be set when offline or nonparticipation is set');
|
|
243
|
-
}
|
|
244
|
-
}
|
|
245
|
-
};
|
|
246
|
-
KeyRegistrationBuilder.prototype.validateFields = function (voteKey, selectionKey, voteFirst, voteLast, voteKeyDilution, stateProofKey) {
|
|
247
|
-
var validationResult = txnSchema_1.KeyRegTxnSchema.validate({
|
|
248
|
-
voteKey: voteKey,
|
|
249
|
-
selectionKey: selectionKey,
|
|
250
|
-
voteFirst: voteFirst,
|
|
251
|
-
voteLast: voteLast,
|
|
252
|
-
voteKeyDilution: voteKeyDilution,
|
|
253
|
-
stateProofKey: stateProofKey,
|
|
254
|
-
});
|
|
255
|
-
if (validationResult.error) {
|
|
256
|
-
throw new errors_1.InvalidTransactionError("Transaction validation failed: " + validationResult.error.message);
|
|
257
|
-
}
|
|
258
|
-
};
|
|
259
|
-
return KeyRegistrationBuilder;
|
|
260
|
-
}(transactionBuilder_1.TransactionBuilder));
|
|
261
|
-
exports.KeyRegistrationBuilder = KeyRegistrationBuilder;
|
|
262
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5UmVnaXN0cmF0aW9uQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2luL2FsZ28va2V5UmVnaXN0cmF0aW9uQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw4REFBcUM7QUFDckMsb0RBQThCO0FBRTlCLHdDQUE4QztBQUM5Qyw2Q0FBNkQ7QUFDN0QsMkRBQTBEO0FBRTFELHlDQUE4QztBQUM5QyxrREFBNEI7QUFFNUI7SUFBNEMsMENBQWtCO0lBUzVELGdDQUFZLFVBQWdDO2VBQzFDLGtCQUFNLFVBQVUsQ0FBQztJQUNuQixDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILHdDQUFPLEdBQVAsVUFBUSxHQUFXO1FBQ2pCLElBQUksQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDO1FBQ3BCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCw2Q0FBWSxHQUFaLFVBQWEsR0FBVztRQUN0QixJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsQ0FBQztRQUN6QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0gsOENBQWEsR0FBYixVQUFjLEdBQVc7UUFDdkIsZUFBSyxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsY0FBYyxHQUFHLEdBQUcsQ0FBQztRQUMxQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0gsMENBQVMsR0FBVCxVQUFVLEtBQWE7UUFDckIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLHNCQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUV4QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7Ozs7Ozs7O09BU0c7SUFDSCx5Q0FB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ZSxDQUFDLFFBQVEsQ0FBQztZQUNoRCxPQUFPLFNBQUE7WUFDUCxZQUFZLGNBQUE7WUFDWixTQUFTLFdBQUE7WUFDVCxRQUFRLFVBQUE7WUFDUixlQUFlLGlCQUFBO1lBQ2YsYUFBYSxlQUFBO1NBQ2QsQ0FBQyxDQUFDO1FBRUgsSUFBSSxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUU7WUFDMUIsTUFBTSxJQUFJLGdDQUF1QixDQUFDLG9DQUFrQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsT0FBUyxDQUFDLENBQUM7U0FDdkc7SUFDSCxDQUFDO0lBQ0gsNkJBQUM7QUFBRCxDQUFDLEFBeFRELENBQTRDLHVDQUFrQixHQXdUN0Q7QUF4VFksd0RBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEJpZ051bWJlciBmcm9tICdiaWdudW1iZXIuanMnO1xuaW1wb3J0IGFsZ29zZGsgZnJvbSAnYWxnb3Nkayc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnLi4vYmFzZUNvaW4nO1xuaW1wb3J0IHsgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IgfSBmcm9tICcuLi9iYXNlQ29pbi9lcnJvcnMnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXInO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uJztcbmltcG9ydCB7IEtleVJlZ1R4blNjaGVtYSB9IGZyb20gJy4vdHhuU2NoZW1hJztcbmltcG9ydCBVdGlscyBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNsYXNzIEtleVJlZ2lzdHJhdGlvbkJ1aWxkZXIgZXh0ZW5kcyBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBwcm90ZWN0ZWQgX3ZvdGVLZXk6IHN0cmluZztcbiAgcHJvdGVjdGVkIF9zZWxlY3Rpb25LZXk6IHN0cmluZztcbiAgcHJvdGVjdGVkIF92b3RlRmlyc3Q6IG51bWJlcjtcbiAgcHJvdGVjdGVkIF92b3RlTGFzdDogbnVtYmVyO1xuICBwcm90ZWN0ZWQgX3ZvdGVLZXlEaWx1dGlvbjogbnVtYmVyO1xuICBwcm90ZWN0ZWQgX25vblBhcnRpY2lwYXRpb246IGJvb2xlYW47XG4gIHByb3RlY3RlZCBfc3RhdGVQcm9vZktleTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKGNvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoY29pbkNvbmZpZyk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdm90ZSBrZXlcbiAgICpcbiAgICogQHJldHVybnMge0tleVJlZ2lzdHJhdGlvbkJ1aWxkZXJ9IFRoaXMgS2V5IFJlZ2lzdHJhdGlvbiBidWlsZGVyLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30ga2V5IFRoZSByb290IHBhcnRpY2lwYXRpb24gcHVibGljIGtleS4gU2VlIEdlbmVyYXRlIGEgUGFydGljaXBhdGlvbiBLZXkgdG8gbGVhcm4gbW9yZS5cbiAgICogaHR0cHM6Ly9kZXZlbG9wZXIuYWxnb3JhbmQub3JnL2RvY3MvcmVmZXJlbmNlL3RyYW5zYWN0aW9ucy8ja2V5LXJlZ2lzdHJhdGlvbi10cmFuc2FjdGlvblxuICAgKi9cbiAgdm90ZUtleShrZXk6IHN0cmluZyk6IEtleVJlZ2lzdHJhdGlvbkJ1aWxkZXIge1xuICAgIHRoaXMuX3ZvdGVLZXkgPSBrZXk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgc2VsZWN0aW9uIGtleVxuICAgKlxuICAgKiBAcmV0dXJucyB7S2V5UmVnaXN0cmF0aW9uQnVpbGRlcn0gVGhpcyBLZXkgUmVnaXN0cmF0aW9uIGJ1aWxkZXIuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBrZXkgVGhlIFZSRiBwdWJsaWMga2V5IGZvciB0aGUgYWNjb3VudC5cbiAgICogaHR0cHM6Ly9kZXZlbG9wZXIuYWxnb3JhbmQub3JnL2RvY3MvcmVmZXJlbmNlL3RyYW5zYWN0aW9ucy8ja2V5LXJlZ2lzdHJhdGlvbi10cmFuc2FjdGlvblxuICAgKi9cbiAgc2VsZWN0aW9uS2V5KGtleTogc3RyaW5nKTogS2V5UmVnaXN0cmF0aW9uQnVpbGRlciB7XG4gICAgdGhpcy5fc2VsZWN0aW9uS2V5ID0ga2V5O1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHN0YXRlUHJvb2Yga2V5XG4gICAqXG4gICAqIEByZXR1cm5zIHtLZXlSZWdpc3RyYXRpb25CdWlsZGVyfSBUaGlzIEtleSBSZWdpc3RyYXRpb24gYnVpbGRlci5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGtleSBUaGUgc3RhdGVwcm9vZiBrZXkuIFNlZSBjb25zZW5zdXMgZm9yIG1vcmUgaW5mb3JtYXRpb24uXG4gICAqIGh0dHBzOi8vZGV2ZWxvcGVyLmFsZ29yYW5kLm9yZy9kb2NzL2dldC1kZXRhaWxzL2FsZ29yYW5kX2NvbnNlbnN1cy8/ZnJvbV9xdWVyeT1zdGF0ZSNzdGF0ZS1wcm9vZi1rZXlzXG4gICAqL1xuICBzdGF0ZVByb29mS2V5KGtleTogc3RyaW5nKTogS2V5UmVnaXN0cmF0aW9uQnVpbGRlciB7XG4gICAgVXRpbHMudmFsaWRhdGVCYXNlNjQoa2V5KTtcbiAgICB0aGlzLl9zdGF0ZVByb29mS2V5ID0ga2V5O1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqU2V0cyB0aGUgdm90ZSBmaXJzdCByb3VuZFxuICAgKlxuICAgKiBAcmV0dXJucyB7S2V5UmVnaXN0cmF0aW9uQnVpbGRlcn0gVGhpcyBLZXkgUmVnaXN0cmF0aW9uIGJ1aWxkZXIuXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSByb3VuZCBUaGUgZmlyc3Qgcm91bmQgdGhhdCB0aGUgcGFydGljaXBhdGlvbiBrZXkgaXMgdmFsaWQuIE5vdCB0byBiZSBjb25mdXNlZCB3aXRoIHRoZSBGaXJzdFZhbGlkIHJvdW5kIG9mIHRoZSBrZXlyZWcgdHJhbnNhY3Rpb24uXG4gICAqIGh0dHBzOi8vZGV2ZWxvcGVyLmFsZ29yYW5kLm9yZy9kb2NzL3JlZmVyZW5jZS90cmFuc2FjdGlvbnMvI2tleS1yZWdpc3RyYXRpb24tdHJhbnNhY3Rpb25cbiAgICovXG4gIHZvdGVGaXJzdChyb3VuZDogbnVtYmVyKTogS2V5UmVnaXN0cmF0aW9uQnVpbGRlciB7XG4gICAgdGhpcy52YWxpZGF0ZVZhbHVlKG5ldyBCaWdOdW1iZXIocm91bmQpKTtcbiAgICB0aGlzLl92b3RlRmlyc3QgPSByb3VuZDtcblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHZvdGUgbGFzdCByb3VuZFxuICAgKlxuICAgKiBAcmV0dXJucyB7S2V5UmVnaXN0cmF0aW9uQnVpbGRlcn0gVGhpcyBLZXkgUmVnaXN0cmF0aW9uIGJ1aWxkZXIuXG4gICAqXG4gICAqIEEgcmVjb21tZW5kZWQgcmFuZ2UgaXMgMywwMDAsMDAwIHJvdW5kcy5cbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IHJvdW5kIE5vIHRoZW9yZXRpY2FsIGxpbWl0LlxuICAgKiBodHRwczovL2RldmVsb3Blci5hbGdvcmFuZC5vcmcvZG9jcy9ydW4tYS1ub2RlL3BhcnRpY2lwYXRlL2dlbmVyYXRlX2tleXMvXG4gICAqL1xuICB2b3RlTGFzdChyb3VuZDogbnVtYmVyKTogS2V5UmVnaXN0cmF0aW9uQnVpbGRlciB7XG4gICAgdGhpcy52YWxpZGF0ZVZhbHVlKG5ldyBCaWdOdW1iZXIocm91bmQpKTtcbiAgICB0aGlzLl92b3RlTGFzdCA9IHJvdW5kO1xuXG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdm90ZSBrZXkgZGlsdXRpb25cbiAgICpcbiAgICogQHJldHVybnMge0tleVJlZ2lzdHJhdGlvbkJ1aWxkZXJ9IFRoaXMgS2V5IFJlZ2lzdHJhdGlvbiBidWlsZGVyLlxuICAgKlxuICAgKiBEZWZhdWx0cyB0byAxMCwwMDBcbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IHNpemUgWzEwMDAwXS4gVG8gcmVkdWNlIHRoZSBzaXplIG9mIHRoZSBwYXJ0aWNpcGF0aW9uIGtleSwgc2V0IHRoZSBrZXkgZGlsdXRpb24gdmFsdWUgdG8gcm91Z2hseSB0aGUgc3F1YXJlIHJvb3Qgb2YgdGhlIHJhbmdlIHRoYXQgdGhlIHBhcnRrZXkgaXMgdmFsaWQgZm9yLlxuICAgKiBodHRwczovL2RldmVsb3Blci5hbGdvcmFuZC5vcmcvZG9jcy9ydW4tYS1ub2RlL3BhcnRpY2lwYXRlL2dlbmVyYXRlX2tleXMvI2dlbmVyYXRlLXRoZS1wYXJ0aWNpcGF0aW9uLWtleS13aXRoLWdvYWxcbiAgICogQHBhcmFtIHNpemVcbiAgICovXG4gIHZvdGVLZXlEaWx1dGlvbihzaXplID0gMTAwMDApOiBLZXlSZWdpc3RyYXRpb25CdWlsZGVyIHtcbiAgICB0aGlzLnZhbGlkYXRlVmFsdWUobmV3IEJpZ051bWJlcihzaXplKSk7XG4gICAgdGhpcy5fdm90ZUtleURpbHV0aW9uID0gc2l6ZTtcblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIG5vbiBwYXJ0aWNpcGF0aW9uIGZsYWdcbiAgICpcbiAgICogQHJldHVybnMge0tleVJlZ2lzdHJhdGlvbkJ1aWxkZXJ9IFRoaXMgS2V5IFJlZ2lzdHJhdGlvbiBidWlsZGVyLlxuICAgKlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IG5vblBhcnRpY2lwYXRpb24gQWxsIG5ldyBBbGdvcmFuZCBhY2NvdW50cyBhcmUgcGFydGljaXBhdGluZyBieSBkZWZhdWx0LlxuICAgKiBUaGlzIG1lYW5zIHRoYXQgdGhleSBlYXJuIHJld2FyZHMuIE1hcmsgYW4gYWNjb3VudCBub25wYXJ0aWNpcGF0aW5nIGJ5IHNldHRpbmcgdGhpcyB2YWx1ZSB0byB0cnVlIGFuZCB0aGlzIGFjY291bnRcbiAgICogd2lsbCBubyBsb25nZXIgZWFybiByZXdhcmRzIE5FVkVSLlxuICAgKiBodHRwczovL2RldmVsb3Blci5hbGdvcmFuZC5vcmcvZG9jcy9yZWZlcmVuY2UvdHJhbnNhY3Rpb25zLyNrZXktcmVnaXN0cmF0aW9uLXRyYW5zYWN0aW9uXG4gICAqL1xuICBub25QYXJ0aWNpcGF0aW9uKG5vblBhcnRpY2lwYXRpb246IGJvb2xlYW4pOiBLZXlSZWdpc3RyYXRpb25CdWlsZGVyIHtcbiAgICB0aGlzLl9ub25QYXJ0aWNpcGF0aW9uID0gbm9uUGFydGljaXBhdGlvbjtcblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHJvdGVjdGVkIGJ1aWxkQWxnb1R4bigpOiBhbGdvc2RrLlRyYW5zYWN0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5pc09mZmxpbmVLZXlSZWdBY2NvdW50TGliVHJhbnNhY3Rpb24oKVxuICAgICAgPyB0aGlzLmJ1aWxkT2ZmbGluZUtleVJlZ1RyYW5zYWN0aW9uKClcbiAgICAgIDogdGhpcy5pc05vblBhcnRpY2lwYXRpb25LZXlSZWdBY2NvdW50TGliVHJhbnNhY3Rpb24oKVxuICAgICAgPyB0aGlzLmJ1aWxkTm9uUGFydGljaXBhdGlvbktleVJlZ1RyYW5zYWN0aW9uKClcbiAgICAgIDogdGhpcy5idWlsZE9ubGluZUtleVJlZ1RyYW5zYWN0aW9uKCk7XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkT2ZmbGluZUtleVJlZ1RyYW5zYWN0aW9uKCk6IGFsZ29zZGsuVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiBhbGdvc2RrLm1ha2VLZXlSZWdpc3RyYXRpb25UeG5XaXRoU3VnZ2VzdGVkUGFyYW1zKFxuICAgICAgdGhpcy5fc2VuZGVyLFxuICAgICAgdGhpcy5fbm90ZSxcbiAgICAgIHVuZGVmaW5lZCwgLy8gdm90ZUtleSBwYXJhbVxuICAgICAgdW5kZWZpbmVkLCAvLyBzZWxlY3Rpb25LZXkgcGFyYW1cbiAgICAgIHVuZGVmaW5lZCwgLy8gdm90ZUZpcnN0IHBhcmFtXG4gICAgICB1bmRlZmluZWQsIC8vIHZvdGVMYXN0IHBhcmFtXG4gICAgICB1bmRlZmluZWQsIC8vIHZvdGVLZXlEaWx1dGlvbiBwYXJhbVxuICAgICAgdGhpcy5zdWdnZXN0ZWRQYXJhbXMsXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgYnVpbGRPbmxpbmVLZXlSZWdUcmFuc2FjdGlvbigpOiBhbGdvc2RrLlRyYW5zYWN0aW9uIHtcbiAgICByZXR1cm4gYWxnb3Nkay5tYWtlS2V5UmVnaXN0cmF0aW9uVHhuV2l0aFN1Z2dlc3RlZFBhcmFtcyhcbiAgICAgIHRoaXMuX3NlbmRlcixcbiAgICAgIHRoaXMuX25vdGUsXG4gICAgICB0aGlzLl92b3RlS2V5LFxuICAgICAgdGhpcy5fc2VsZWN0aW9uS2V5LFxuICAgICAgdGhpcy5fdm90ZUZpcnN0LFxuICAgICAgdGhpcy5fdm90ZUxhc3QsXG4gICAgICB0aGlzLl92b3RlS2V5RGlsdXRpb24sXG4gICAgICB0aGlzLnN1Z2dlc3RlZFBhcmFtcyxcbiAgICAgIHVuZGVmaW5lZCwgLy8gcmVLZXlUbyBwYXJhbVxuICAgICAgdW5kZWZpbmVkLCAvLyBub25QYXJ0aWNpcGF0aW9uIHBhcmFtXG4gICAgICB0aGlzLl9zdGF0ZVByb29mS2V5LFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkTm9uUGFydGljaXBhdGlvbktleVJlZ1RyYW5zYWN0aW9uKCk6IGFsZ29zZGsuVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiBhbGdvc2RrLm1ha2VLZXlSZWdpc3RyYXRpb25UeG5XaXRoU3VnZ2VzdGVkUGFyYW1zKFxuICAgICAgdGhpcy5fc2VuZGVyLFxuICAgICAgdGhpcy5fbm90ZSxcbiAgICAgIHVuZGVmaW5lZCwgLy8gdm90ZUtleSBwYXJhbVxuICAgICAgdW5kZWZpbmVkLCAvLyBzZWxlY3Rpb25LZXkgcGFyYW1cbiAgICAgIHVuZGVmaW5lZCwgLy8gdm90ZUZpcnN0IHBhcmFtXG4gICAgICB1bmRlZmluZWQsIC8vIHZvdGVMYXN0IHBhcmFtXG4gICAgICB1bmRlZmluZWQsIC8vIHZvdGVLZXlEaWx1dGlvbiBwYXJhbVxuICAgICAgdGhpcy5zdWdnZXN0ZWRQYXJhbXMsXG4gICAgICB0aGlzLl9yZUtleVRvLFxuICAgICAgdHJ1ZSwgLy8gbm9uUGFydGljaXBhdGlvbiBwYXJhbVxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IHRyYW5zYWN0aW9uVHlwZSgpOiBUcmFuc2FjdGlvblR5cGUge1xuICAgIHJldHVybiBUcmFuc2FjdGlvblR5cGUuV2FsbGV0SW5pdGlhbGl6YXRpb247XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGZyb21JbXBsZW1lbnRhdGlvbihyYXdUcmFuc2FjdGlvbjogVWludDhBcnJheSB8IHN0cmluZyk6IFRyYW5zYWN0aW9uIHtcbiAgICBjb25zdCB0eCA9IHN1cGVyLmZyb21JbXBsZW1lbnRhdGlvbihyYXdUcmFuc2FjdGlvbik7XG4gICAgY29uc3QgYWxnb1R4biA9IHR4LmdldEFsZ29UcmFuc2FjdGlvbigpO1xuXG4gICAgaWYgKGFsZ29UeG4pIHtcbiAgICAgIGlmICh0aGlzLmlzTm9uUGFydGljaXBhdGlvbktleVJlZ0FsZ29TREtUcmFuc2FjdGlvbihhbGdvVHhuKSkge1xuICAgICAgICB0aGlzLm5vblBhcnRpY2lwYXRpb24oISFhbGdvVHhuLm5vblBhcnRpY2lwYXRpb24pO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLmlzT25saW5lS2V5UmVnQWxnb1NES1RyYW5zYWN0aW9uKGFsZ29UeG4pKSB7XG4gICAgICAgIHRoaXMudm90ZUtleShhbGdvVHhuLnZvdGVLZXkudG9TdHJpbmcoJ2Jhc2U2NCcpKTtcbiAgICAgICAgdGhpcy5zZWxlY3Rpb25LZXkoYWxnb1R4bi5zZWxlY3Rpb25LZXkudG9TdHJpbmcoJ2Jhc2U2NCcpKTtcbiAgICAgICAgdGhpcy52b3RlRmlyc3QoYWxnb1R4bi52b3RlRmlyc3QpO1xuICAgICAgICB0aGlzLnZvdGVMYXN0KGFsZ29UeG4udm90ZUxhc3QpO1xuICAgICAgICB0aGlzLnZvdGVLZXlEaWx1dGlvbihhbGdvVHhuLnZvdGVLZXlEaWx1dGlvbik7XG4gICAgICAgIGlmIChhbGdvVHhuLnN0YXRlUHJvb2ZLZXkpIHtcbiAgICAgICAgICB0aGlzLnN0YXRlUHJvb2ZLZXkoYWxnb1R4bi5zdGF0ZVByb29mS2V5LnRvU3RyaW5nKCdiYXNlNjQnKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHR4O1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlUmF3VHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb246IFVpbnQ4QXJyYXkgfCBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBkZWNvZGVUeG4gPSBVdGlscy5kZWNvZGVBbGdvVHhuKHJhd1RyYW5zYWN0aW9uKTtcbiAgICBjb25zdCBhbGdvVHhuID0gZGVjb2RlVHhuLnR4bjtcbiAgICBpZiAoYWxnb1R4bi50eXBlICE9PSBhbGdvc2RrLlRyYW5zYWN0aW9uVHlwZS5rZXlyZWcpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihcbiAgICAgICAgYEludmFsaWQgVHJhbnNhY3Rpb24gVHlwZTogJHthbGdvVHhuLnR5cGV9LiBFeHBlY3RlZCAke2FsZ29zZGsuVHJhbnNhY3Rpb25UeXBlLmtleXJlZ31gLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5pc09ubGluZUtleVJlZ0FsZ29TREtUcmFuc2FjdGlvbihhbGdvVHhuKSkge1xuICAgICAgdGhpcy52YWxpZGF0ZUZpZWxkcyhcbiAgICAgICAgYWxnb1R4bi52b3RlS2V5LnRvU3RyaW5nKCdiYXNlNjQnKSxcbiAgICAgICAgYWxnb1R4bi5zZWxlY3Rpb25LZXkudG9TdHJpbmcoJ2Jhc2U2NCcpLFxuICAgICAgICBhbGdvVHhuLnZvdGVGaXJzdCxcbiAgICAgICAgYWxnb1R4bi52b3RlTGFzdCxcbiAgICAgICAgYWxnb1R4bi52b3RlS2V5RGlsdXRpb24sXG4gICAgICAgIGFsZ29UeG4uc3RhdGVQcm9vZktleSAmJiBhbGdvVHhuLnN0YXRlUHJvb2ZLZXkudG9TdHJpbmcoJ2Jhc2U2NCcpLFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGlzTm9uUGFydGljaXBhdGlvbktleVJlZ0FsZ29TREtUcmFuc2FjdGlvbihhbGdvVHhuOiBhbGdvc2RrLlRyYW5zYWN0aW9uKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhYWxnb1R4bi5ub25QYXJ0aWNpcGF0aW9uO1xuICB9XG5cbiAgcHJpdmF0ZSBpc05vblBhcnRpY2lwYXRpb25LZXlSZWdBY2NvdW50TGliVHJhbnNhY3Rpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5fbm9uUGFydGljaXBhdGlvbjtcbiAgfVxuXG4gIHByaXZhdGUgaXNPbmxpbmVLZXlSZWdBbGdvU0RLVHJhbnNhY3Rpb24oYWxnb1R4bjogYWxnb3Nkay5UcmFuc2FjdGlvbik6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhKFxuICAgICAgdGhpcy5pc09mZmxpbmVLZXlSZWdBbGdvU0RLVHJhbnNhY3Rpb24oYWxnb1R4bikgfHwgdGhpcy5pc05vblBhcnRpY2lwYXRpb25LZXlSZWdBbGdvU0RLVHJhbnNhY3Rpb24oYWxnb1R4bilcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBpc09ubGluZUtleVJlZ0FjY291bnRMaWJUcmFuc2FjdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISh0aGlzLmlzT2ZmbGluZUtleVJlZ0FjY291bnRMaWJUcmFuc2FjdGlvbigpIHx8IHRoaXMuaXNOb25QYXJ0aWNpcGF0aW9uS2V5UmVnQWNjb3VudExpYlRyYW5zYWN0aW9uKCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBpc09mZmxpbmVLZXlSZWdBbGdvU0RLVHJhbnNhY3Rpb24oYWxnb1R4bjogYWxnb3Nkay5UcmFuc2FjdGlvbik6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICAhYWxnb1R4bi52b3RlS2V5ICYmXG4gICAgICAhYWxnb1R4bi5zZWxlY3Rpb25LZXkgJiZcbiAgICAgICFhbGdvVHhuLnZvdGVGaXJzdCAmJlxuICAgICAgIWFsZ29UeG4udm90ZUxhc3QgJiZcbiAgICAgICFhbGdvVHhuLnZvdGVLZXlEaWx1dGlvbiAmJlxuICAgICAgIWFsZ29UeG4uc3RhdGVQcm9vZktleSAmJlxuICAgICAgIWFsZ29UeG4ubm9uUGFydGljaXBhdGlvblxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGlzT2ZmbGluZUtleVJlZ0FjY291bnRMaWJUcmFuc2FjdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgIXRoaXMuX3ZvdGVLZXkgJiZcbiAgICAgICF0aGlzLl9zZWxlY3Rpb25LZXkgJiZcbiAgICAgICF0aGlzLl92b3RlRmlyc3QgJiZcbiAgICAgICF0aGlzLl92b3RlTGFzdCAmJlxuICAgICAgIXRoaXMuX3ZvdGVLZXlEaWx1dGlvbiAmJlxuICAgICAgIXRoaXMuX3N0YXRlUHJvb2ZLZXkgJiZcbiAgICAgICF0aGlzLl9ub25QYXJ0aWNpcGF0aW9uXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVRyYW5zYWN0aW9uKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIHN1cGVyLnZhbGlkYXRlVHJhbnNhY3Rpb24odHJhbnNhY3Rpb24pO1xuICAgIGlmICh0aGlzLmlzT25saW5lS2V5UmVnQWNjb3VudExpYlRyYW5zYWN0aW9uKCkpIHtcbiAgICAgIC8vIGludmFsaWQgb2ZmbGluZSB3aWxsIHJlYWNoIGhlcmVcbiAgICAgIHRoaXMudmFsaWRhdGVGaWVsZHMoXG4gICAgICAgIHRoaXMuX3ZvdGVLZXksXG4gICAgICAgIHRoaXMuX3NlbGVjdGlvbktleSxcbiAgICAgICAgdGhpcy5fdm90ZUZpcnN0LFxuICAgICAgICB0aGlzLl92b3RlTGFzdCxcbiAgICAgICAgdGhpcy5fdm90ZUtleURpbHV0aW9uLFxuICAgICAgICB0aGlzLl9zdGF0ZVByb29mS2V5LFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gb2ZmbGluZSBvciBub25wYXJ0aWNpcGF0aW9uIHRyYW5zYWN0aW9uXG4gICAgICBpZiAoXG4gICAgICAgIHRoaXMuX3ZvdGVLZXkgfHxcbiAgICAgICAgdGhpcy5fc2VsZWN0aW9uS2V5IHx8XG4gICAgICAgIHRoaXMuX3ZvdGVGaXJzdCB8fFxuICAgICAgICB0aGlzLl92b3RlTGFzdCB8fFxuICAgICAgICB0aGlzLl92b3RlS2V5RGlsdXRpb24gfHxcbiAgICAgICAgdGhpcy5fc3RhdGVQcm9vZktleVxuICAgICAgKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihcbiAgICAgICAgICAnVm90ZUtleSwgU2VsZWN0aW9uS2V5LCBWb3RlRmlyc3QsIFZvdGVMYXN0LCBWb3RlS2V5RGlsdXRpb24sIFN0YXRlUHJvb2ZLZXkgZmllbGRzIGNhbm5vdCBiZSBzZXQgd2hlbiBvZmZsaW5lIG9yIG5vbnBhcnRpY2lwYXRpb24gaXMgc2V0JyxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHZhbGlkYXRlRmllbGRzKFxuICAgIHZvdGVLZXk6IHN0cmluZyxcbiAgICBzZWxlY3Rpb25LZXk6IHN0cmluZyxcbiAgICB2b3RlRmlyc3Q6IG51bWJlcixcbiAgICB2b3RlTGFzdDogbnVtYmVyLFxuICAgIHZvdGVLZXlEaWx1dGlvbjogbnVtYmVyLFxuICAgIHN0YXRlUHJvb2ZLZXk/OiBzdHJpbmcsXG4gICk6IHZvaWQge1xuICAgIGNvbnN0IHZhbGlkYXRpb25SZXN1bHQgPSBLZXlSZWdUeG5TY2hlbWEudmFsaWRhdGUoe1xuICAgICAgdm90ZUtleSxcbiAgICAgIHNlbGVjdGlvbktleSxcbiAgICAgIHZvdGVGaXJzdCxcbiAgICAgIHZvdGVMYXN0LFxuICAgICAgdm90ZUtleURpbHV0aW9uLFxuICAgICAgc3RhdGVQcm9vZktleSxcbiAgICB9KTtcblxuICAgIGlmICh2YWxpZGF0aW9uUmVzdWx0LmVycm9yKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYFRyYW5zYWN0aW9uIHZhbGlkYXRpb24gZmFpbGVkOiAke3ZhbGlkYXRpb25SZXN1bHQuZXJyb3IubWVzc2FnZX1gKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { Seed } from './ifaces';
|
|
2
|
-
export declare class SeedEncoding {
|
|
3
|
-
private static genericHash;
|
|
4
|
-
/**
|
|
5
|
-
* Checks if a seed is valid
|
|
6
|
-
* @param {String} seed - encoded Algorand seed
|
|
7
|
-
* @returns {Boolean} true if valid, false otherwise
|
|
8
|
-
*/
|
|
9
|
-
static isValidSeed(seed: string): boolean;
|
|
10
|
-
/**
|
|
11
|
-
* Decode a seed
|
|
12
|
-
*
|
|
13
|
-
* @param seed
|
|
14
|
-
* @return {{checksum: Uint8Array, seed: Uint8Array}}
|
|
15
|
-
*/
|
|
16
|
-
static decode(seed: string): Seed;
|
|
17
|
-
/**
|
|
18
|
-
* Encode a secret key into a seed
|
|
19
|
-
*
|
|
20
|
-
* @param secretKey
|
|
21
|
-
* @return {String} encoded seed
|
|
22
|
-
*/
|
|
23
|
-
static encode(secretKey: Uint8Array): string;
|
|
24
|
-
}
|
|
25
|
-
//# sourceMappingURL=seedEncoding.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"seedEncoding.d.ts","sourceRoot":"","sources":["../../../../src/coin/algo/seedEncoding.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAOhC,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAC,WAAW;IAI1B;;;;OAIG;IACH,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IA0BzC;;;;;OAKG;IACH,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAajC;;;;;OAKG;IACH,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,UAAU,GAAG,MAAM;CAe7C"}
|