@bitgo-beta/sdk-core 8.2.1-beta.7 → 8.2.1-beta.700
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 +2643 -0
- package/dist/src/account-lib/baseCoin/baseTransaction.d.ts +0 -1
- package/dist/src/account-lib/baseCoin/baseTransaction.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/baseTransactionBuilder.d.ts +0 -1
- package/dist/src/account-lib/baseCoin/baseTransactionBuilder.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/baseTransactionBuilder.js +1 -1
- package/dist/src/account-lib/baseCoin/blsKeyPair.d.ts +0 -1
- package/dist/src/account-lib/baseCoin/blsKeyPair.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/blsKeyPair.js +43 -29
- package/dist/src/account-lib/baseCoin/ed25519KeyPair.d.ts +1 -0
- package/dist/src/account-lib/baseCoin/ed25519KeyPair.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/ed25519KeyPair.js +41 -29
- package/dist/src/account-lib/baseCoin/enum.d.ts +16 -2
- package/dist/src/account-lib/baseCoin/enum.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/enum.js +31 -5
- package/dist/src/account-lib/baseCoin/errors.js +1 -1
- package/dist/src/account-lib/baseCoin/iface.d.ts +18 -15
- package/dist/src/account-lib/baseCoin/iface.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/iface.js +10 -7
- package/dist/src/account-lib/baseCoin/index.js +6 -2
- package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.d.ts +0 -1
- package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.js +33 -21
- package/dist/src/account-lib/index.js +23 -9
- package/dist/src/account-lib/mpc/curves/ed25519.d.ts +4 -18
- package/dist/src/account-lib/mpc/curves/ed25519.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/curves/ed25519.js +6 -60
- package/dist/src/account-lib/mpc/index.d.ts +4 -4
- package/dist/src/account-lib/mpc/index.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/index.js +11 -7
- package/dist/src/account-lib/mpc/shamir.d.ts +5 -37
- package/dist/src/account-lib/mpc/shamir.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/shamir.js +6 -130
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts +74 -19
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.js +803 -278
- package/dist/src/account-lib/mpc/tss/ecdsa/index.js +23 -9
- package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.d.ts +3 -3
- package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.js +5 -5
- package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts +120 -162
- package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/ecdsa/types.js +1 -1
- package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts +1 -2
- package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/eddsa/eddsa.js +65 -67
- package/dist/src/account-lib/mpc/tss/eddsa/index.js +23 -9
- package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts +1 -4
- package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/eddsa/types.js +1 -1
- package/dist/src/account-lib/mpc/tss/index.js +23 -9
- package/dist/src/account-lib/mpc/util.d.ts +7 -1
- package/dist/src/account-lib/mpc/util.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/util.js +19 -1
- package/dist/src/account-lib/staking/index.js +6 -2
- package/dist/src/account-lib/staking/utils.js +3 -3
- package/dist/src/account-lib/util/crypto.d.ts +12 -26
- package/dist/src/account-lib/util/crypto.d.ts.map +1 -1
- package/dist/src/account-lib/util/crypto.js +67 -82
- package/dist/src/account-lib/util/ed25519KeyDeriver.d.ts +2 -1
- package/dist/src/account-lib/util/ed25519KeyDeriver.d.ts.map +1 -1
- package/dist/src/account-lib/util/ed25519KeyDeriver.js +5 -3
- package/dist/src/api/bip32path.js +2 -3
- package/dist/src/api/index.js +6 -2
- package/dist/src/api/types.d.ts +1 -0
- package/dist/src/api/types.d.ts.map +1 -1
- package/dist/src/api/types.js +1 -1
- package/dist/src/bitgo/address-book/address-book.d.ts +61 -0
- package/dist/src/bitgo/address-book/address-book.d.ts.map +1 -0
- package/dist/src/bitgo/address-book/address-book.js +139 -0
- package/dist/src/bitgo/address-book/index.d.ts +3 -0
- package/dist/src/bitgo/address-book/index.d.ts.map +1 -0
- package/dist/src/{openssl → bitgo/address-book}/index.js +8 -3
- package/dist/src/bitgo/address-book/types.d.ts +170 -0
- package/dist/src/bitgo/address-book/types.d.ts.map +1 -0
- package/dist/src/bitgo/address-book/types.js +3 -0
- package/dist/src/bitgo/baseCoin/baseCoin.d.ts +80 -8
- package/dist/src/bitgo/baseCoin/baseCoin.d.ts.map +1 -1
- package/dist/src/bitgo/baseCoin/baseCoin.js +123 -15
- package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts +89 -19
- package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts.map +1 -1
- package/dist/src/bitgo/baseCoin/iBaseCoin.js +2 -2
- package/dist/src/bitgo/baseCoin/index.js +6 -2
- package/dist/src/bitgo/bip32util.d.ts +0 -1
- package/dist/src/bitgo/bip32util.d.ts.map +1 -1
- package/dist/src/bitgo/bip32util.js +25 -12
- package/dist/src/bitgo/bitcoin.d.ts +0 -1
- package/dist/src/bitgo/bitcoin.d.ts.map +1 -1
- package/dist/src/bitgo/bitcoin.js +26 -13
- package/dist/src/bitgo/bitgoBase.d.ts +4 -1
- package/dist/src/bitgo/bitgoBase.d.ts.map +1 -1
- package/dist/src/bitgo/bitgoBase.js +1 -1
- package/dist/src/bitgo/coinFactory.d.ts +1 -1
- package/dist/src/bitgo/coinFactory.d.ts.map +1 -1
- package/dist/src/bitgo/coinFactory.js +1 -1
- package/dist/src/bitgo/config.d.ts +56 -20
- package/dist/src/bitgo/config.d.ts.map +1 -1
- package/dist/src/bitgo/config.js +25 -11
- package/dist/src/bitgo/ecdh.d.ts +0 -1
- package/dist/src/bitgo/ecdh.d.ts.map +1 -1
- package/dist/src/bitgo/ecdh.js +26 -13
- package/dist/src/bitgo/enterprise/enterprise.d.ts +18 -16
- package/dist/src/bitgo/enterprise/enterprise.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/enterprise.js +70 -36
- package/dist/src/bitgo/enterprise/enterprises.d.ts +6 -0
- package/dist/src/bitgo/enterprise/enterprises.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/enterprises.js +48 -9
- package/dist/src/bitgo/enterprise/iEnterprise.d.ts +8 -9
- package/dist/src/bitgo/enterprise/iEnterprise.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/iEnterprise.js +1 -1
- package/dist/src/bitgo/enterprise/iEnterprises.d.ts +2 -0
- package/dist/src/bitgo/enterprise/iEnterprises.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/iEnterprises.js +1 -1
- package/dist/src/bitgo/enterprise/index.js +6 -2
- package/dist/src/bitgo/environments.d.ts +43 -5
- package/dist/src/bitgo/environments.d.ts.map +1 -1
- package/dist/src/bitgo/environments.js +64 -13
- package/dist/src/bitgo/errors.d.ts +3 -0
- package/dist/src/bitgo/errors.d.ts.map +1 -1
- package/dist/src/bitgo/errors.js +8 -2
- package/dist/src/bitgo/index.d.ts +1 -0
- package/dist/src/bitgo/index.d.ts.map +1 -1
- package/dist/src/bitgo/index.js +24 -9
- package/dist/src/bitgo/inscriptionBuilder/iInscriptionBuilder.d.ts +3 -3
- package/dist/src/bitgo/inscriptionBuilder/iInscriptionBuilder.d.ts.map +1 -1
- package/dist/src/bitgo/inscriptionBuilder/iInscriptionBuilder.js +1 -1
- package/dist/src/bitgo/inscriptionBuilder/index.js +6 -2
- package/dist/src/bitgo/internal/index.js +6 -2
- package/dist/src/bitgo/internal/internal.js +5 -6
- package/dist/src/bitgo/internal/keycard.js +6 -7
- package/dist/src/bitgo/keychain/decryptKeychain.d.ts +13 -0
- package/dist/src/bitgo/keychain/decryptKeychain.d.ts.map +1 -0
- package/dist/src/bitgo/keychain/decryptKeychain.js +35 -0
- package/dist/src/bitgo/keychain/iKeychains.d.ts +62 -4
- package/dist/src/bitgo/keychain/iKeychains.d.ts.map +1 -1
- package/dist/src/bitgo/keychain/iKeychains.js +2 -2
- package/dist/src/bitgo/keychain/index.d.ts +1 -0
- package/dist/src/bitgo/keychain/index.d.ts.map +1 -1
- package/dist/src/bitgo/keychain/index.js +7 -2
- package/dist/src/bitgo/keychain/keychains.d.ts +13 -3
- package/dist/src/bitgo/keychain/keychains.d.ts.map +1 -1
- package/dist/src/bitgo/keychain/keychains.js +155 -51
- package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts +126 -91
- package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts.map +1 -1
- package/dist/src/bitgo/keychain/ovcJsonCodec.js +53 -32
- package/dist/src/bitgo/legacyBitcoin.d.ts +0 -1
- package/dist/src/bitgo/legacyBitcoin.d.ts.map +1 -1
- package/dist/src/bitgo/legacyBitcoin.js +27 -13
- package/dist/src/bitgo/lightning/codecs.d.ts +320 -0
- package/dist/src/bitgo/lightning/codecs.d.ts.map +1 -0
- package/dist/src/bitgo/lightning/codecs.js +211 -0
- package/dist/src/bitgo/lightning/{iLightning.d.ts → custodial/iLightning.d.ts} +12 -12
- package/dist/src/bitgo/lightning/custodial/iLightning.d.ts.map +1 -0
- package/dist/src/bitgo/lightning/custodial/iLightning.js +120 -0
- package/dist/src/bitgo/lightning/custodial/index.d.ts +5 -0
- package/dist/src/bitgo/lightning/custodial/index.d.ts.map +1 -0
- package/dist/src/bitgo/lightning/custodial/index.js +21 -0
- package/dist/src/bitgo/lightning/{lightning.d.ts → custodial/lightning.d.ts} +2 -2
- package/dist/src/bitgo/lightning/custodial/lightning.d.ts.map +1 -0
- package/dist/src/bitgo/lightning/custodial/lightning.js +111 -0
- package/dist/src/bitgo/lightning/custodial/lightningUtils.d.ts +46 -0
- package/dist/src/bitgo/lightning/custodial/lightningUtils.d.ts.map +1 -0
- package/dist/src/bitgo/lightning/custodial/lightningUtils.js +145 -0
- package/dist/src/bitgo/lightning/custodial/lnurlCodec.d.ts.map +1 -0
- package/dist/src/bitgo/lightning/custodial/lnurlCodec.js +27 -0
- package/dist/src/bitgo/lightning/index.d.ts +4 -3
- package/dist/src/bitgo/lightning/index.d.ts.map +1 -1
- package/dist/src/bitgo/lightning/index.js +10 -5
- package/dist/src/bitgo/lightning/lightningUtils.d.ts +58 -45
- package/dist/src/bitgo/lightning/lightningUtils.d.ts.map +1 -1
- package/dist/src/bitgo/lightning/lightningUtils.js +190 -99
- package/dist/src/bitgo/lightning/lightningWallet.d.ts +18 -0
- package/dist/src/bitgo/lightning/lightningWallet.d.ts.map +1 -0
- package/dist/src/bitgo/lightning/lightningWallet.js +65 -0
- package/dist/src/bitgo/lightning/signableJson.d.ts +17 -0
- package/dist/src/bitgo/lightning/signableJson.d.ts.map +1 -0
- package/dist/src/bitgo/lightning/signableJson.js +29 -0
- package/dist/src/bitgo/lightning/signature.d.ts +22 -0
- package/dist/src/bitgo/lightning/signature.d.ts.map +1 -0
- package/dist/src/bitgo/lightning/signature.js +69 -0
- package/dist/src/bitgo/market/iMarkets.d.ts +2 -2
- package/dist/src/bitgo/market/iMarkets.d.ts.map +1 -1
- package/dist/src/bitgo/market/index.js +6 -2
- package/dist/src/bitgo/market/markets.js +23 -9
- package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts +3 -0
- package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts.map +1 -1
- package/dist/src/bitgo/pendingApproval/iPendingApproval.js +4 -4
- package/dist/src/bitgo/pendingApproval/index.js +6 -2
- package/dist/src/bitgo/pendingApproval/pendingApproval.d.ts +20 -8
- package/dist/src/bitgo/pendingApproval/pendingApproval.d.ts.map +1 -1
- package/dist/src/bitgo/pendingApproval/pendingApproval.js +204 -98
- package/dist/src/bitgo/pendingApproval/pendingApprovals.js +23 -9
- package/dist/src/bitgo/recovery/index.js +6 -2
- package/dist/src/bitgo/recovery/initiate.d.ts +8 -2
- package/dist/src/bitgo/recovery/initiate.d.ts.map +1 -1
- package/dist/src/bitgo/recovery/initiate.js +7 -8
- package/dist/src/bitgo/staking/iStakingWallet.d.ts +115 -5
- package/dist/src/bitgo/staking/iStakingWallet.d.ts.map +1 -1
- package/dist/src/bitgo/staking/iStakingWallet.js +2 -2
- package/dist/src/bitgo/staking/index.js +6 -2
- package/dist/src/bitgo/staking/stakingWallet.d.ts +20 -3
- package/dist/src/bitgo/staking/stakingWallet.d.ts.map +1 -1
- package/dist/src/bitgo/staking/stakingWallet.js +53 -4
- package/dist/src/bitgo/trading/iTradingAccount.d.ts +2 -32
- package/dist/src/bitgo/trading/iTradingAccount.d.ts.map +1 -1
- package/dist/src/bitgo/trading/iTradingAccount.js +1 -1
- package/dist/src/bitgo/trading/index.d.ts +1 -15
- package/dist/src/bitgo/trading/index.d.ts.map +1 -1
- package/dist/src/bitgo/trading/index.js +7 -17
- package/dist/src/bitgo/trading/network/decrypt-aes-gcm.d.ts +8 -0
- package/dist/src/bitgo/trading/network/decrypt-aes-gcm.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/decrypt-aes-gcm.js +31 -0
- package/dist/src/bitgo/trading/network/decrypt-rsa.d.ts +8 -0
- package/dist/src/bitgo/trading/network/decrypt-rsa.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/decrypt-rsa.js +23 -0
- package/dist/src/bitgo/trading/network/decrypt.d.ts +14 -0
- package/dist/src/bitgo/trading/network/decrypt.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/decrypt.js +23 -0
- package/dist/src/bitgo/trading/network/encrypt-aes-gcm.d.ts +8 -0
- package/dist/src/bitgo/trading/network/encrypt-aes-gcm.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/encrypt-aes-gcm.js +25 -0
- package/dist/src/bitgo/trading/network/encrypt-rsa-browser.d.ts +8 -0
- package/dist/src/bitgo/trading/network/encrypt-rsa-browser.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/encrypt-rsa-browser.js +65 -0
- package/dist/src/bitgo/trading/network/encrypt-rsa.d.ts +8 -0
- package/dist/src/bitgo/trading/network/encrypt-rsa.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/encrypt-rsa.js +23 -0
- package/dist/src/bitgo/trading/network/encrypt.d.ts +37 -0
- package/dist/src/bitgo/trading/network/encrypt.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/encrypt.js +58 -0
- package/dist/src/bitgo/trading/network/index.d.ts +5 -0
- package/dist/src/bitgo/trading/network/index.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/index.js +21 -0
- package/dist/src/bitgo/trading/network/network.d.ts +36 -0
- package/dist/src/bitgo/trading/network/network.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/network.js +101 -0
- package/dist/src/bitgo/trading/network/types.d.ts +277 -0
- package/dist/src/bitgo/trading/network/types.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/types.js +3 -0
- package/dist/src/bitgo/trading/network/utils.d.ts +20 -0
- package/dist/src/bitgo/trading/network/utils.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/utils.js +54 -0
- package/dist/src/bitgo/trading/tradingAccount.d.ts +11 -35
- package/dist/src/bitgo/trading/tradingAccount.d.ts.map +1 -1
- package/dist/src/bitgo/trading/tradingAccount.js +9 -96
- package/dist/src/bitgo/tss/bitgoPubKeys.d.ts +27 -0
- package/dist/src/bitgo/tss/bitgoPubKeys.d.ts.map +1 -0
- package/dist/src/bitgo/tss/bitgoPubKeys.js +61 -0
- package/dist/src/bitgo/tss/common.d.ts +51 -9
- package/dist/src/bitgo/tss/common.d.ts.map +1 -1
- package/dist/src/bitgo/tss/common.js +124 -23
- package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts +17 -12
- package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/bitgo/tss/ecdsa/ecdsa.js +111 -96
- package/dist/src/bitgo/tss/ecdsa/ecdsaMPCv2.d.ts +15 -0
- package/dist/src/bitgo/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -0
- package/dist/src/bitgo/tss/ecdsa/ecdsaMPCv2.js +162 -0
- package/dist/src/bitgo/tss/ecdsa/index.d.ts +1 -0
- package/dist/src/bitgo/tss/ecdsa/index.d.ts.map +1 -1
- package/dist/src/bitgo/tss/ecdsa/index.js +25 -10
- package/dist/src/bitgo/tss/ecdsa/types.d.ts +27 -27
- package/dist/src/bitgo/tss/ecdsa/types.d.ts.map +1 -1
- package/dist/src/bitgo/tss/ecdsa/types.js +3 -3
- package/dist/src/bitgo/tss/eddsa/eddsa.d.ts +13 -9
- package/dist/src/bitgo/tss/eddsa/eddsa.d.ts.map +1 -1
- package/dist/src/bitgo/tss/eddsa/eddsa.js +43 -35
- package/dist/src/bitgo/tss/eddsa/index.js +23 -9
- package/dist/src/bitgo/tss/eddsa/types.d.ts +4 -4
- package/dist/src/bitgo/tss/eddsa/types.d.ts.map +1 -1
- package/dist/src/bitgo/tss/index.d.ts +3 -2
- package/dist/src/bitgo/tss/index.d.ts.map +1 -1
- package/dist/src/bitgo/tss/index.js +26 -10
- package/dist/src/bitgo/tss/types.d.ts +19 -0
- package/dist/src/bitgo/tss/types.d.ts.map +1 -1
- package/dist/src/bitgo/tss/types.js +2 -2
- package/dist/src/bitgo/types.d.ts +3 -3
- package/dist/src/bitgo/types.d.ts.map +1 -1
- package/dist/src/bitgo/utils/abstractUtxoCoinUtil.d.ts +11 -0
- package/dist/src/bitgo/utils/abstractUtxoCoinUtil.d.ts.map +1 -1
- package/dist/src/bitgo/utils/abstractUtxoCoinUtil.js +66 -10
- package/dist/src/bitgo/utils/blsUtils.js +5 -5
- package/dist/src/bitgo/utils/codecProps.d.ts +7 -0
- package/dist/src/bitgo/utils/codecProps.d.ts.map +1 -0
- package/dist/src/bitgo/utils/codecProps.js +54 -0
- package/dist/src/bitgo/utils/decode.d.ts.map +1 -1
- package/dist/src/bitgo/utils/decode.js +30 -16
- package/dist/src/bitgo/utils/index.d.ts +2 -0
- package/dist/src/bitgo/utils/index.d.ts.map +1 -1
- package/dist/src/bitgo/utils/index.js +25 -9
- package/dist/src/bitgo/utils/mpcUtils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/mpcUtils.js +17 -12
- package/dist/src/bitgo/utils/notEmpty.d.ts +2 -0
- package/dist/src/bitgo/utils/notEmpty.d.ts.map +1 -0
- package/dist/src/bitgo/utils/notEmpty.js +7 -0
- package/dist/src/bitgo/utils/opengpgUtils.d.ts +11 -4
- package/dist/src/bitgo/utils/opengpgUtils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/opengpgUtils.js +70 -57
- package/dist/src/bitgo/utils/postWithCodec.d.ts +18 -0
- package/dist/src/bitgo/utils/postWithCodec.d.ts.map +1 -0
- package/dist/src/bitgo/utils/postWithCodec.js +25 -0
- package/dist/src/bitgo/utils/promise-utils.d.ts +1 -1
- package/dist/src/bitgo/utils/promise-utils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/promise-utils.js +2 -3
- package/dist/src/bitgo/utils/triple.d.ts +1 -1
- package/dist/src/bitgo/utils/triple.d.ts.map +1 -1
- package/dist/src/bitgo/utils/triple.js +2 -3
- package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts +90 -18
- package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/baseTSSUtils.js +196 -35
- package/dist/src/bitgo/utils/tss/baseTypes.d.ts +276 -28
- package/dist/src/bitgo/utils/tss/baseTypes.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/baseTypes.js +35 -10
- package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.d.ts +23 -0
- package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.js +157 -0
- package/dist/src/bitgo/utils/tss/ecdsa/base.d.ts +30 -0
- package/dist/src/bitgo/utils/tss/ecdsa/base.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/ecdsa/base.js +51 -0
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts +52 -34
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.js +329 -226
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts +199 -0
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.js +930 -0
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.d.ts +8 -0
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.js +13 -0
- package/dist/src/bitgo/utils/tss/ecdsa/index.d.ts +4 -0
- package/dist/src/bitgo/utils/tss/ecdsa/index.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/index.js +10 -2
- package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts +19 -10
- package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/types.js +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.d.ts +107 -0
- package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.js +55 -0
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts +21 -6
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.js +124 -61
- package/dist/src/bitgo/utils/tss/eddsa/index.js +23 -9
- package/dist/src/bitgo/utils/tss/eddsa/types.d.ts +7 -7
- package/dist/src/bitgo/utils/tss/eddsa/types.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/index.js +23 -9
- package/dist/src/bitgo/utils/txRequest.d.ts +10 -0
- package/dist/src/bitgo/utils/txRequest.d.ts.map +1 -0
- package/dist/src/bitgo/utils/txRequest.js +47 -0
- package/dist/src/bitgo/utils/util.js +24 -10
- package/dist/src/bitgo/utils/wallet.d.ts +7 -0
- package/dist/src/bitgo/utils/wallet.d.ts.map +1 -0
- package/dist/src/bitgo/utils/wallet.js +48 -0
- package/dist/src/bitgo/wallet/BuildParams.d.ts +119 -0
- package/dist/src/bitgo/wallet/BuildParams.d.ts.map +1 -0
- package/dist/src/bitgo/wallet/BuildParams.js +140 -0
- package/dist/src/bitgo/wallet/iWallet.d.ts +188 -16
- package/dist/src/bitgo/wallet/iWallet.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/iWallet.js +1 -1
- package/dist/src/bitgo/wallet/iWallets.d.ts +62 -13
- package/dist/src/bitgo/wallet/iWallets.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/iWallets.js +42 -2
- package/dist/src/bitgo/wallet/index.js +6 -2
- package/dist/src/bitgo/wallet/lightning.d.ts +20 -0
- package/dist/src/bitgo/wallet/lightning.d.ts.map +1 -0
- package/dist/src/bitgo/wallet/lightning.js +16 -0
- package/dist/src/bitgo/wallet/wallet.d.ts +172 -19
- package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/wallet.js +847 -314
- package/dist/src/bitgo/wallet/wallets.d.ts +66 -8
- package/dist/src/bitgo/wallet/wallets.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/wallets.js +598 -189
- package/dist/src/bitgo/webhook/index.js +6 -2
- package/dist/src/bitgo/webhook/webhooks.js +23 -9
- package/dist/src/coins/fiateur.d.ts +0 -1
- package/dist/src/coins/fiateur.d.ts.map +1 -1
- package/dist/src/coins/fiatgbp.d.ts +0 -1
- package/dist/src/coins/fiatgbp.d.ts.map +1 -1
- package/dist/src/coins/fiatusd.d.ts +0 -1
- package/dist/src/coins/fiatusd.d.ts.map +1 -1
- package/dist/src/coins/index.js +6 -2
- package/dist/src/coins/ofc.d.ts +0 -1
- package/dist/src/coins/ofc.d.ts.map +1 -1
- package/dist/src/coins/ofc.js +2 -2
- package/dist/src/coins/ofcToken.js +2 -2
- package/dist/src/coins/susd.d.ts +0 -1
- package/dist/src/coins/susd.d.ts.map +1 -1
- package/dist/src/common.js +27 -13
- package/dist/src/index.d.ts +6 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +28 -11
- package/dist/src/units.js +5 -6
- package/dist/test/node.utils.d.ts +2 -0
- package/dist/test/node.utils.d.ts.map +1 -0
- package/dist/test/node.utils.js +5 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/ecdsa.d.ts +2 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/ecdsa.js +233 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/fixtures.d.ts +3 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/fixtures.d.ts.map +1 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/fixtures.js +24 -0
- package/dist/test/unit/bitgo/lightning/codecs.d.ts +2 -0
- package/dist/test/unit/bitgo/lightning/codecs.d.ts.map +1 -0
- package/dist/test/unit/bitgo/lightning/codecs.js +147 -0
- package/dist/test/unit/bitgo/lightning/createWatchOnlyFixture.d.ts +4 -0
- package/dist/test/unit/bitgo/lightning/createWatchOnlyFixture.d.ts.map +1 -0
- package/dist/test/unit/bitgo/lightning/createWatchOnlyFixture.js +1562 -0
- package/dist/test/unit/bitgo/lightning/lightningUtils.d.ts +2 -0
- package/dist/test/unit/bitgo/lightning/lightningUtils.d.ts.map +1 -0
- package/dist/test/unit/bitgo/lightning/lightningUtils.js +104 -0
- package/dist/test/unit/bitgo/lightning/signableJson.d.ts +2 -0
- package/dist/test/unit/bitgo/lightning/signableJson.d.ts.map +1 -0
- package/dist/test/unit/bitgo/lightning/signableJson.js +52 -0
- package/dist/test/unit/bitgo/lightning/signature.d.ts +2 -0
- package/dist/test/unit/bitgo/lightning/signature.d.ts.map +1 -0
- package/dist/test/unit/bitgo/lightning/signature.js +91 -0
- package/dist/test/unit/bitgo/trading/network/encrypt.d.ts +2 -0
- package/dist/test/unit/bitgo/trading/network/encrypt.d.ts.map +1 -0
- package/dist/test/unit/bitgo/trading/network/encrypt.js +71 -0
- package/dist/test/unit/bitgo/utils/abstractUtxoCoinUtil.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/abstractUtxoCoinUtil.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/abstractUtxoCoinUtil.js +45 -0
- package/dist/test/unit/bitgo/utils/notEmpty.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/notEmpty.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/notEmpty.js +15 -0
- package/dist/test/unit/bitgo/utils/postWithCodec.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/postWithCodec.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/postWithCodec.js +73 -0
- package/dist/test/unit/bitgo/utils/txRequest.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/txRequest.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/txRequest.js +105 -0
- package/dist/test/unit/bitgo/wallet/BuildParams.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/BuildParams.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/BuildParams.js +68 -0
- package/dist/test/unit/bitgo/wallet/SendTransactionRequest.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/SendTransactionRequest.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/SendTransactionRequest.js +58 -0
- package/dist/test/unit/units.d.ts +2 -0
- package/dist/test/unit/units.d.ts.map +1 -0
- package/dist/test/unit/units.js +98 -0
- package/dist/tsconfig.tsbuildinfo +1 -8264
- package/package.json +28 -18
- package/dist/src/account-lib/mpc/hdTree.d.ts +0 -31
- package/dist/src/account-lib/mpc/hdTree.d.ts.map +0 -1
- package/dist/src/account-lib/mpc/hdTree.js +0 -141
- package/dist/src/account-lib/mpc/types.d.ts +0 -5
- package/dist/src/account-lib/mpc/types.d.ts.map +0 -1
- package/dist/src/account-lib/mpc/types.js +0 -3
- package/dist/src/bitgo/lightning/iLightning.d.ts.map +0 -1
- package/dist/src/bitgo/lightning/iLightning.js +0 -106
- package/dist/src/bitgo/lightning/lightning.d.ts.map +0 -1
- package/dist/src/bitgo/lightning/lightning.js +0 -111
- package/dist/src/bitgo/lightning/lnurlCodec.d.ts.map +0 -1
- package/dist/src/bitgo/lightning/lnurlCodec.js +0 -28
- package/dist/src/bitgo/trading/affirmation.d.ts +0 -35
- package/dist/src/bitgo/trading/affirmation.d.ts.map +0 -1
- package/dist/src/bitgo/trading/affirmation.js +0 -53
- package/dist/src/bitgo/trading/affirmations.d.ts +0 -23
- package/dist/src/bitgo/trading/affirmations.d.ts.map +0 -1
- package/dist/src/bitgo/trading/affirmations.js +0 -45
- package/dist/src/bitgo/trading/iAffirmation.d.ts +0 -15
- package/dist/src/bitgo/trading/iAffirmation.d.ts.map +0 -1
- package/dist/src/bitgo/trading/iAffirmation.js +0 -13
- package/dist/src/bitgo/trading/iAffirmations.d.ts +0 -10
- package/dist/src/bitgo/trading/iAffirmations.d.ts.map +0 -1
- package/dist/src/bitgo/trading/iAffirmations.js +0 -3
- package/dist/src/bitgo/trading/iSettlement.d.ts +0 -25
- package/dist/src/bitgo/trading/iSettlement.d.ts.map +0 -1
- package/dist/src/bitgo/trading/iSettlement.js +0 -17
- package/dist/src/bitgo/trading/iSettlements.d.ts +0 -19
- package/dist/src/bitgo/trading/iSettlements.d.ts.map +0 -1
- package/dist/src/bitgo/trading/iSettlements.js +0 -3
- package/dist/src/bitgo/trading/iTradingPartner.d.ts +0 -14
- package/dist/src/bitgo/trading/iTradingPartner.d.ts.map +0 -1
- package/dist/src/bitgo/trading/iTradingPartner.js +0 -17
- package/dist/src/bitgo/trading/iTradingPartners.d.ts +0 -15
- package/dist/src/bitgo/trading/iTradingPartners.d.ts.map +0 -1
- package/dist/src/bitgo/trading/iTradingPartners.js +0 -9
- package/dist/src/bitgo/trading/lock.d.ts +0 -16
- package/dist/src/bitgo/trading/lock.d.ts.map +0 -1
- package/dist/src/bitgo/trading/lock.js +0 -12
- package/dist/src/bitgo/trading/payload.d.ts +0 -22
- package/dist/src/bitgo/trading/payload.d.ts.map +0 -1
- package/dist/src/bitgo/trading/payload.js +0 -3
- package/dist/src/bitgo/trading/settlement.d.ts +0 -16
- package/dist/src/bitgo/trading/settlement.d.ts.map +0 -1
- package/dist/src/bitgo/trading/settlement.js +0 -21
- package/dist/src/bitgo/trading/settlements.d.ts +0 -32
- package/dist/src/bitgo/trading/settlements.d.ts.map +0 -1
- package/dist/src/bitgo/trading/settlements.js +0 -61
- package/dist/src/bitgo/trading/trade.d.ts +0 -29
- package/dist/src/bitgo/trading/trade.d.ts.map +0 -1
- package/dist/src/bitgo/trading/trade.js +0 -11
- package/dist/src/bitgo/trading/tradingPartner.d.ts +0 -26
- package/dist/src/bitgo/trading/tradingPartner.d.ts.map +0 -1
- package/dist/src/bitgo/trading/tradingPartner.js +0 -31
- package/dist/src/bitgo/trading/tradingPartners.d.ts +0 -24
- package/dist/src/bitgo/trading/tradingPartners.d.ts.map +0 -1
- package/dist/src/bitgo/trading/tradingPartners.js +0 -32
- package/dist/src/openssl/index.d.ts +0 -2
- package/dist/src/openssl/index.d.ts.map +0 -1
- package/dist/src/openssl/openssl.d.ts +0 -12
- package/dist/src/openssl/openssl.d.ts.map +0 -1
- package/dist/src/openssl/openssl.js +0 -48
- package/dist/src/openssl/opensslbytes.d.ts +0 -4
- package/dist/src/openssl/opensslbytes.d.ts.map +0 -1
- package/dist/src/openssl/opensslbytes.js +0 -20
- /package/dist/src/bitgo/lightning/{lnurlCodec.d.ts → custodial/lnurlCodec.d.ts} +0 -0
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getPaillierPublicKey = exports.clamp = exports.bigIntToBufferBE = exports.bigIntFromBufferBE = exports.bigIntFromU8ABE = exports.bigIntToBufferLE = exports.bigIntFromBufferLE = void 0;
|
|
4
|
+
exports.combineRound4DklsDsgMessages = combineRound4DklsDsgMessages;
|
|
4
5
|
const sdk_lib_mpc_1 = require("@bitgo-beta/sdk-lib-mpc");
|
|
5
6
|
Object.defineProperty(exports, "bigIntFromBufferLE", { enumerable: true, get: function () { return sdk_lib_mpc_1.bigIntFromBufferLE; } });
|
|
6
7
|
Object.defineProperty(exports, "bigIntToBufferLE", { enumerable: true, get: function () { return sdk_lib_mpc_1.bigIntToBufferLE; } });
|
|
@@ -9,4 +10,21 @@ Object.defineProperty(exports, "bigIntFromBufferBE", { enumerable: true, get: fu
|
|
|
9
10
|
Object.defineProperty(exports, "bigIntToBufferBE", { enumerable: true, get: function () { return sdk_lib_mpc_1.bigIntToBufferBE; } });
|
|
10
11
|
Object.defineProperty(exports, "clamp", { enumerable: true, get: function () { return sdk_lib_mpc_1.clamp; } });
|
|
11
12
|
Object.defineProperty(exports, "getPaillierPublicKey", { enumerable: true, get: function () { return sdk_lib_mpc_1.getPaillierPublicKey; } });
|
|
12
|
-
|
|
13
|
+
/**
|
|
14
|
+
* Combines serialized partial signatures from parties participating in DSG.
|
|
15
|
+
* @param round4DsgMessages - round 4 serialized broadcast messages payloads from participating parties
|
|
16
|
+
* @returns {DklsTypes.SerializedDklsSignature} - serialized final signature
|
|
17
|
+
*/
|
|
18
|
+
function combineRound4DklsDsgMessages(round4DsgMessages) {
|
|
19
|
+
const round4DsgMessagesDeser = round4DsgMessages.map(sdk_lib_mpc_1.DklsTypes.deserializeBroadcastMessage);
|
|
20
|
+
const signatureR = round4DsgMessagesDeser.find((m) => m.signatureR !== undefined)?.signatureR;
|
|
21
|
+
if (!signatureR) {
|
|
22
|
+
throw Error('None of the round 4 Dkls messages contain a Signature.R value.');
|
|
23
|
+
}
|
|
24
|
+
const signatureDeser = sdk_lib_mpc_1.DklsUtils.combinePartialSignatures(round4DsgMessagesDeser.map((m) => m.payload), Buffer.from(signatureR).toString('hex'));
|
|
25
|
+
return {
|
|
26
|
+
R: Buffer.from(signatureDeser.R).toString('hex'),
|
|
27
|
+
S: Buffer.from(signatureDeser.S).toString('hex'),
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hY2NvdW50LWxpYi9tcGMvdXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFpQkEsb0VBZ0JDO0FBakNELHlEQVVpQztBQTZCL0IsbUdBdENBLGdDQUFrQixPQXNDQTtBQUNsQixpR0F0Q0EsOEJBQWdCLE9Bc0NBO0FBQ2hCLGdHQXRDQSw2QkFBZSxPQXNDQTtBQUNmLG1HQXRDQSxnQ0FBa0IsT0FzQ0E7QUFDbEIsaUdBdENBLDhCQUFnQixPQXNDQTtBQUNoQixzRkF0Q0EsbUJBQUssT0FzQ0E7QUFDTCxxR0F0Q0Esa0NBQW9CLE9Bc0NBO0FBakN0Qjs7OztHQUlHO0FBQ0gsU0FBZ0IsNEJBQTRCLENBQzFDLGlCQUF5RDtJQUV6RCxNQUFNLHNCQUFzQixHQUFHLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyx1QkFBUyxDQUFDLDJCQUEyQixDQUFDLENBQUM7SUFDNUYsTUFBTSxVQUFVLEdBQUcsc0JBQXNCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxLQUFLLFNBQVMsQ0FBQyxFQUFFLFVBQVUsQ0FBQztJQUM5RixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDaEIsTUFBTSxLQUFLLENBQUMsZ0VBQWdFLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBQ0QsTUFBTSxjQUFjLEdBQUcsdUJBQVMsQ0FBQyx3QkFBd0IsQ0FDdkQsc0JBQXNCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQzVDLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUN4QyxDQUFDO0lBQ0YsT0FBTztRQUNMLENBQUMsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO1FBQ2hELENBQUMsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO0tBQ2pELENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgYmlnSW50RnJvbUJ1ZmZlckxFLFxuICBiaWdJbnRUb0J1ZmZlckxFLFxuICBiaWdJbnRGcm9tVThBQkUsXG4gIGJpZ0ludEZyb21CdWZmZXJCRSxcbiAgYmlnSW50VG9CdWZmZXJCRSxcbiAgY2xhbXAsXG4gIGdldFBhaWxsaWVyUHVibGljS2V5LFxuICBEa2xzVXRpbHMsXG4gIERrbHNUeXBlcyxcbn0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWxpYi1tcGMnO1xuXG4vKipcbiAqIENvbWJpbmVzIHNlcmlhbGl6ZWQgcGFydGlhbCBzaWduYXR1cmVzIGZyb20gcGFydGllcyBwYXJ0aWNpcGF0aW5nIGluIERTRy5cbiAqIEBwYXJhbSByb3VuZDREc2dNZXNzYWdlcyAtIHJvdW5kIDQgc2VyaWFsaXplZCBicm9hZGNhc3QgbWVzc2FnZXMgcGF5bG9hZHMgZnJvbSBwYXJ0aWNpcGF0aW5nIHBhcnRpZXNcbiAqIEByZXR1cm5zIHtEa2xzVHlwZXMuU2VyaWFsaXplZERrbHNTaWduYXR1cmV9IC0gc2VyaWFsaXplZCBmaW5hbCBzaWduYXR1cmVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvbWJpbmVSb3VuZDREa2xzRHNnTWVzc2FnZXMoXG4gIHJvdW5kNERzZ01lc3NhZ2VzOiBEa2xzVHlwZXMuU2VyaWFsaXplZEJyb2FkY2FzdE1lc3NhZ2VbXVxuKTogRGtsc1R5cGVzLlNlcmlhbGl6ZWREa2xzU2lnbmF0dXJlIHtcbiAgY29uc3Qgcm91bmQ0RHNnTWVzc2FnZXNEZXNlciA9IHJvdW5kNERzZ01lc3NhZ2VzLm1hcChEa2xzVHlwZXMuZGVzZXJpYWxpemVCcm9hZGNhc3RNZXNzYWdlKTtcbiAgY29uc3Qgc2lnbmF0dXJlUiA9IHJvdW5kNERzZ01lc3NhZ2VzRGVzZXIuZmluZCgobSkgPT4gbS5zaWduYXR1cmVSICE9PSB1bmRlZmluZWQpPy5zaWduYXR1cmVSO1xuICBpZiAoIXNpZ25hdHVyZVIpIHtcbiAgICB0aHJvdyBFcnJvcignTm9uZSBvZiB0aGUgcm91bmQgNCBEa2xzIG1lc3NhZ2VzIGNvbnRhaW4gYSBTaWduYXR1cmUuUiB2YWx1ZS4nKTtcbiAgfVxuICBjb25zdCBzaWduYXR1cmVEZXNlciA9IERrbHNVdGlscy5jb21iaW5lUGFydGlhbFNpZ25hdHVyZXMoXG4gICAgcm91bmQ0RHNnTWVzc2FnZXNEZXNlci5tYXAoKG0pID0+IG0ucGF5bG9hZCksXG4gICAgQnVmZmVyLmZyb20oc2lnbmF0dXJlUikudG9TdHJpbmcoJ2hleCcpXG4gICk7XG4gIHJldHVybiB7XG4gICAgUjogQnVmZmVyLmZyb20oc2lnbmF0dXJlRGVzZXIuUikudG9TdHJpbmcoJ2hleCcpLFxuICAgIFM6IEJ1ZmZlci5mcm9tKHNpZ25hdHVyZURlc2VyLlMpLnRvU3RyaW5nKCdoZXgnKSxcbiAgfTtcbn1cblxuLyoqXG4gKiBAZGVwcmVjYXRlZCAtIHVzZSBleHBvcnRlZCBtZXRob2RzIGZyb20gQGJpdGdvLWJldGEvc2RrLWxpYi1tcGMgaW5zdGVhZFxuICovXG5leHBvcnQge1xuICBiaWdJbnRGcm9tQnVmZmVyTEUsXG4gIGJpZ0ludFRvQnVmZmVyTEUsXG4gIGJpZ0ludEZyb21VOEFCRSxcbiAgYmlnSW50RnJvbUJ1ZmZlckJFLFxuICBiaWdJbnRUb0J1ZmZlckJFLFxuICBjbGFtcCxcbiAgZ2V0UGFpbGxpZXJQdWJsaWNLZXksXG59O1xuIl19
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
@@ -11,4 +15,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
11
15
|
};
|
|
12
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
17
|
__exportStar(require("./utils"), exports);
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvc3Rha2luZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMENBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi91dGlscyc7XG4iXX0=
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.WithdrawMethodId = exports.ActivateMethodId = exports.UnvoteMethodId = exports.VoteMethodId = exports.UnlockMethodId = exports.LockMethodId = void 0;
|
|
4
|
+
exports.getOperationConfig = getOperationConfig;
|
|
4
5
|
const statics_1 = require("@bitgo-beta/statics");
|
|
5
6
|
const baseCoin_1 = require("../baseCoin");
|
|
6
7
|
exports.LockMethodId = '0xf83d08ba'; // lock()
|
|
@@ -94,5 +95,4 @@ const operations = {
|
|
|
94
95
|
function getOperationConfig(type, network) {
|
|
95
96
|
return operations[type][network];
|
|
96
97
|
}
|
|
97
|
-
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvc3Rha2luZy91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxpREFBa0Q7QUFDbEQsMENBQW9EO0FBUXZDLFFBQUEsWUFBWSxHQUFHLFlBQVksQ0FBQyxDQUFDLFNBQVM7QUFDdEMsUUFBQSxjQUFjLEdBQUcsWUFBWSxDQUFDLENBQUMsV0FBVztBQUMxQyxRQUFBLFlBQVksR0FBRyxZQUFZLENBQUMsQ0FBQyxTQUFTO0FBQ3RDLFFBQUEsY0FBYyxHQUFHLFlBQVksQ0FBQyxDQUFDLGlCQUFpQjtBQUNoRCxRQUFBLGdCQUFnQixHQUFHLFlBQVksQ0FBQyxDQUFDLGFBQWE7QUFDOUMsUUFBQSxnQkFBZ0IsR0FBRyxZQUFZLENBQUMsQ0FBQyxhQUFhO0FBRTNELE1BQU0sd0JBQXdCLEdBQUcsNENBQTRDLENBQUM7QUFDOUUsTUFBTSx3QkFBd0IsR0FBRyw0Q0FBNEMsQ0FBQztBQUM5RSxNQUFNLHNCQUFzQixHQUFHLDRDQUE0QyxDQUFDO0FBQzVFLE1BQU0sc0JBQXNCLEdBQUcsNENBQTRDLENBQUM7QUFFNUUsTUFBTSxVQUFVLEdBQUc7SUFDakIsQ0FBQyxnQ0FBcUIsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUM1QixDQUFDLHFCQUFXLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDckIsZUFBZSxFQUFFLHdCQUF3QjtZQUN6QyxRQUFRLEVBQUUsb0JBQVk7WUFDdEIsS0FBSyxFQUFFLEVBQUU7U0FDVjtRQUNELENBQUMscUJBQVcsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNyQixlQUFlLEVBQUUsd0JBQXdCO1lBQ3pDLFFBQVEsRUFBRSxvQkFBWTtZQUN0QixLQUFLLEVBQUUsRUFBRTtTQUNWO0tBQ0Y7SUFDRCxDQUFDLGdDQUFxQixDQUFDLE1BQU0sQ0FBQyxFQUFFO1FBQzlCLENBQUMscUJBQVcsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNyQixlQUFlLEVBQUUsd0JBQXdCO1lBQ3pDLFFBQVEsRUFBRSxzQkFBYztZQUN4QixLQUFLLEVBQUUsQ0FBQyxTQUFTLENBQUM7U0FDbkI7UUFDRCxDQUFDLHFCQUFXLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDckIsZUFBZSxFQUFFLHdCQUF3QjtZQUN6QyxRQUFRLEVBQUUsc0JBQWM7WUFDeEIsS0FBSyxFQUFFLENBQUMsU0FBUyxDQUFDO1NBQ25CO0tBQ0Y7SUFDRCxDQUFDLGdDQUFxQixDQUFDLElBQUksQ0FBQyxFQUFFO1FBQzVCLENBQUMscUJBQVcsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNyQixlQUFlLEVBQUUsc0JBQXNCO1lBQ3ZDLFFBQVEsRUFBRSxvQkFBWTtZQUN0QixLQUFLLEVBQUUsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUM7U0FDcEQ7UUFDRCxDQUFDLHFCQUFXLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDckIsZUFBZSxFQUFFLHNCQUFzQjtZQUN2QyxRQUFRLEVBQUUsb0JBQVk7WUFDdEIsS0FBSyxFQUFFLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFDO1NBQ3BEO0tBQ0Y7SUFDRCxDQUFDLGdDQUFxQixDQUFDLE1BQU0sQ0FBQyxFQUFFO1FBQzlCLENBQUMscUJBQVcsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNyQixlQUFlLEVBQUUsc0JBQXNCO1lBQ3ZDLFFBQVEsRUFBRSxzQkFBYztZQUN4QixLQUFLLEVBQUUsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFDO1NBQy9EO1FBQ0QsQ0FBQyxxQkFBVyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3JCLGVBQWUsRUFBRSxzQkFBc0I7WUFDdkMsUUFBUSxFQUFFLHNCQUFjO1lBQ3hCLEtBQUssRUFBRSxDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUM7U0FDL0Q7S0FDRjtJQUNELENBQUMsZ0NBQXFCLENBQUMsUUFBUSxDQUFDLEVBQUU7UUFDaEMsQ0FBQyxxQkFBVyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3JCLGVBQWUsRUFBRSxzQkFBc0I7WUFDdkMsUUFBUSxFQUFFLHdCQUFnQjtZQUMxQixLQUFLLEVBQUUsQ0FBQyxTQUFTLENBQUM7U0FDbkI7UUFDRCxDQUFDLHFCQUFXLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDckIsZUFBZSxFQUFFLHNCQUFzQjtZQUN2QyxRQUFRLEVBQUUsd0JBQWdCO1lBQzFCLEtBQUssRUFBRSxDQUFDLFNBQVMsQ0FBQztTQUNuQjtLQUNGO0lBQ0QsQ0FBQyxnQ0FBcUIsQ0FBQyxRQUFRLENBQUMsRUFBRTtRQUNoQyxDQUFDLHFCQUFXLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDckIsZUFBZSxFQUFFLHdCQUF3QjtZQUN6QyxRQUFRLEVBQUUsd0JBQWdCO1lBQzFCLEtBQUssRUFBRSxDQUFDLFNBQVMsQ0FBQztTQUNuQjtRQUNELENBQUMscUJBQVcsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNyQixlQUFlLEVBQUUsd0JBQXdCO1lBQ3pDLFFBQVEsRUFBRSx3QkFBZ0I7WUFDMUIsS0FBSyxFQUFFLENBQUMsU0FBUyxDQUFDO1NBQ25CO0tBQ0Y7Q0FDRixDQUFDO0FBRUY7OztHQUdHO0FBQ0gsU0FBZ0Isa0JBQWtCLENBQUMsSUFBMkIsRUFBRSxPQUFvQjtJQUNsRixPQUFPLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUNuQyxDQUFDO0FBRkQsZ0RBRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZXR3b3JrVHlwZSB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgU3Rha2luZ09wZXJhdGlvblR5cGVzIH0gZnJvbSAnLi4vYmFzZUNvaW4nO1xuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRyYWN0TWV0aG9kQ29uZmlnIHtcbiAgY29udHJhY3RBZGRyZXNzOiBzdHJpbmc7XG4gIG1ldGhvZElkOiBzdHJpbmc7XG4gIHR5cGVzOiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGNvbnN0IExvY2tNZXRob2RJZCA9ICcweGY4M2QwOGJhJzsgLy8gbG9jaygpXG5leHBvcnQgY29uc3QgVW5sb2NrTWV0aG9kSWQgPSAnMHg2MTk4ZTMzOSc7IC8vIHVubG9jaygpXG5leHBvcnQgY29uc3QgVm90ZU1ldGhvZElkID0gJzB4NTgwZDc0N2EnOyAvLyB2b3RlKClcbmV4cG9ydCBjb25zdCBVbnZvdGVNZXRob2RJZCA9ICcweDZlMTk4NDc1JzsgLy8gcmV2b2tlQWN0aXZlKClcbmV4cG9ydCBjb25zdCBBY3RpdmF0ZU1ldGhvZElkID0gJzB4MWM1YTlkOWMnOyAvLyBhY3RpdmF0ZSgpXG5leHBvcnQgY29uc3QgV2l0aGRyYXdNZXRob2RJZCA9ICcweDJlMWE3ZDRkJzsgLy8gd2l0aGRyYXcoKVxuXG5jb25zdCBMb2NrZWRHb2xkVGVzdG5ldEFkZHJlc3MgPSAnMHg5NGMzZTY2NzUwMTVkODQ3OWI2NDg2NTdlN2RkZmNkOTM4NDg5ZDBkJztcbmNvbnN0IExvY2tlZEdvbGRNYWlubmV0QWRkcmVzcyA9ICcweDZjYzA4M2FlZDllM2ViZTMwMmE2MzM2ZGJjN2M5MjFjOWYwMzM0OWUnO1xuY29uc3QgRWxlY3Rpb25UZXN0bmV0QWRkcmVzcyA9ICcweDExZmU1MjNmOTNjYWMxODVkMTJjYjM5Y2MzYmQyNzlkMmRlNTI0ZjgnO1xuY29uc3QgRWxlY3Rpb25NYWlubmV0QWRkcmVzcyA9ICcweDhkNjY3NzE5MjE0NDI5Mjg3MDkwN2UzZmE4YTU1MjdmZTU1YTdmZjYnO1xuXG5jb25zdCBvcGVyYXRpb25zID0ge1xuICBbU3Rha2luZ09wZXJhdGlvblR5cGVzLkxPQ0tdOiB7XG4gICAgW05ldHdvcmtUeXBlLlRFU1RORVRdOiB7XG4gICAgICBjb250cmFjdEFkZHJlc3M6IExvY2tlZEdvbGRUZXN0bmV0QWRkcmVzcyxcbiAgICAgIG1ldGhvZElkOiBMb2NrTWV0aG9kSWQsXG4gICAgICB0eXBlczogW10sXG4gICAgfSxcbiAgICBbTmV0d29ya1R5cGUuTUFJTk5FVF06IHtcbiAgICAgIGNvbnRyYWN0QWRkcmVzczogTG9ja2VkR29sZE1haW5uZXRBZGRyZXNzLFxuICAgICAgbWV0aG9kSWQ6IExvY2tNZXRob2RJZCxcbiAgICAgIHR5cGVzOiBbXSxcbiAgICB9LFxuICB9LFxuICBbU3Rha2luZ09wZXJhdGlvblR5cGVzLlVOTE9DS106IHtcbiAgICBbTmV0d29ya1R5cGUuVEVTVE5FVF06IHtcbiAgICAgIGNvbnRyYWN0QWRkcmVzczogTG9ja2VkR29sZFRlc3RuZXRBZGRyZXNzLFxuICAgICAgbWV0aG9kSWQ6IFVubG9ja01ldGhvZElkLFxuICAgICAgdHlwZXM6IFsndWludDI1NiddLFxuICAgIH0sXG4gICAgW05ldHdvcmtUeXBlLk1BSU5ORVRdOiB7XG4gICAgICBjb250cmFjdEFkZHJlc3M6IExvY2tlZEdvbGRNYWlubmV0QWRkcmVzcyxcbiAgICAgIG1ldGhvZElkOiBVbmxvY2tNZXRob2RJZCxcbiAgICAgIHR5cGVzOiBbJ3VpbnQyNTYnXSxcbiAgICB9LFxuICB9LFxuICBbU3Rha2luZ09wZXJhdGlvblR5cGVzLlZPVEVdOiB7XG4gICAgW05ldHdvcmtUeXBlLlRFU1RORVRdOiB7XG4gICAgICBjb250cmFjdEFkZHJlc3M6IEVsZWN0aW9uVGVzdG5ldEFkZHJlc3MsXG4gICAgICBtZXRob2RJZDogVm90ZU1ldGhvZElkLFxuICAgICAgdHlwZXM6IFsnYWRkcmVzcycsICd1aW50MjU2JywgJ2FkZHJlc3MnLCAnYWRkcmVzcyddLFxuICAgIH0sXG4gICAgW05ldHdvcmtUeXBlLk1BSU5ORVRdOiB7XG4gICAgICBjb250cmFjdEFkZHJlc3M6IEVsZWN0aW9uTWFpbm5ldEFkZHJlc3MsXG4gICAgICBtZXRob2RJZDogVm90ZU1ldGhvZElkLFxuICAgICAgdHlwZXM6IFsnYWRkcmVzcycsICd1aW50MjU2JywgJ2FkZHJlc3MnLCAnYWRkcmVzcyddLFxuICAgIH0sXG4gIH0sXG4gIFtTdGFraW5nT3BlcmF0aW9uVHlwZXMuVU5WT1RFXToge1xuICAgIFtOZXR3b3JrVHlwZS5URVNUTkVUXToge1xuICAgICAgY29udHJhY3RBZGRyZXNzOiBFbGVjdGlvblRlc3RuZXRBZGRyZXNzLFxuICAgICAgbWV0aG9kSWQ6IFVudm90ZU1ldGhvZElkLFxuICAgICAgdHlwZXM6IFsnYWRkcmVzcycsICd1aW50MjU2JywgJ2FkZHJlc3MnLCAnYWRkcmVzcycsICd1aW50MjU2J10sXG4gICAgfSxcbiAgICBbTmV0d29ya1R5cGUuTUFJTk5FVF06IHtcbiAgICAgIGNvbnRyYWN0QWRkcmVzczogRWxlY3Rpb25NYWlubmV0QWRkcmVzcyxcbiAgICAgIG1ldGhvZElkOiBVbnZvdGVNZXRob2RJZCxcbiAgICAgIHR5cGVzOiBbJ2FkZHJlc3MnLCAndWludDI1NicsICdhZGRyZXNzJywgJ2FkZHJlc3MnLCAndWludDI1NiddLFxuICAgIH0sXG4gIH0sXG4gIFtTdGFraW5nT3BlcmF0aW9uVHlwZXMuQUNUSVZBVEVdOiB7XG4gICAgW05ldHdvcmtUeXBlLlRFU1RORVRdOiB7XG4gICAgICBjb250cmFjdEFkZHJlc3M6IEVsZWN0aW9uVGVzdG5ldEFkZHJlc3MsXG4gICAgICBtZXRob2RJZDogQWN0aXZhdGVNZXRob2RJZCxcbiAgICAgIHR5cGVzOiBbJ2FkZHJlc3MnXSxcbiAgICB9LFxuICAgIFtOZXR3b3JrVHlwZS5NQUlOTkVUXToge1xuICAgICAgY29udHJhY3RBZGRyZXNzOiBFbGVjdGlvbk1haW5uZXRBZGRyZXNzLFxuICAgICAgbWV0aG9kSWQ6IEFjdGl2YXRlTWV0aG9kSWQsXG4gICAgICB0eXBlczogWydhZGRyZXNzJ10sXG4gICAgfSxcbiAgfSxcbiAgW1N0YWtpbmdPcGVyYXRpb25UeXBlcy5XSVRIRFJBV106IHtcbiAgICBbTmV0d29ya1R5cGUuVEVTVE5FVF06IHtcbiAgICAgIGNvbnRyYWN0QWRkcmVzczogTG9ja2VkR29sZFRlc3RuZXRBZGRyZXNzLFxuICAgICAgbWV0aG9kSWQ6IFdpdGhkcmF3TWV0aG9kSWQsXG4gICAgICB0eXBlczogWyd1aW50MjU2J10sXG4gICAgfSxcbiAgICBbTmV0d29ya1R5cGUuTUFJTk5FVF06IHtcbiAgICAgIGNvbnRyYWN0QWRkcmVzczogTG9ja2VkR29sZE1haW5uZXRBZGRyZXNzLFxuICAgICAgbWV0aG9kSWQ6IFdpdGhkcmF3TWV0aG9kSWQsXG4gICAgICB0eXBlczogWyd1aW50MjU2J10sXG4gICAgfSxcbiAgfSxcbn07XG5cbi8qKlxuICogQHBhcmFtIHR5cGVcbiAqIEBwYXJhbSBuZXR3b3JrXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRPcGVyYXRpb25Db25maWcodHlwZTogU3Rha2luZ09wZXJhdGlvblR5cGVzLCBuZXR3b3JrOiBOZXR3b3JrVHlwZSk6IENvbnRyYWN0TWV0aG9kQ29uZmlnIHtcbiAgcmV0dXJuIG9wZXJhdGlvbnNbdHlwZV1bbmV0d29ya107XG59XG4iXX0=
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvc3Rha2luZy91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFvR0EsZ0RBRUM7QUF0R0QsaURBQWtEO0FBQ2xELDBDQUFvRDtBQVF2QyxRQUFBLFlBQVksR0FBRyxZQUFZLENBQUMsQ0FBQyxTQUFTO0FBQ3RDLFFBQUEsY0FBYyxHQUFHLFlBQVksQ0FBQyxDQUFDLFdBQVc7QUFDMUMsUUFBQSxZQUFZLEdBQUcsWUFBWSxDQUFDLENBQUMsU0FBUztBQUN0QyxRQUFBLGNBQWMsR0FBRyxZQUFZLENBQUMsQ0FBQyxpQkFBaUI7QUFDaEQsUUFBQSxnQkFBZ0IsR0FBRyxZQUFZLENBQUMsQ0FBQyxhQUFhO0FBQzlDLFFBQUEsZ0JBQWdCLEdBQUcsWUFBWSxDQUFDLENBQUMsYUFBYTtBQUUzRCxNQUFNLHdCQUF3QixHQUFHLDRDQUE0QyxDQUFDO0FBQzlFLE1BQU0sd0JBQXdCLEdBQUcsNENBQTRDLENBQUM7QUFDOUUsTUFBTSxzQkFBc0IsR0FBRyw0Q0FBNEMsQ0FBQztBQUM1RSxNQUFNLHNCQUFzQixHQUFHLDRDQUE0QyxDQUFDO0FBRTVFLE1BQU0sVUFBVSxHQUFHO0lBQ2pCLENBQUMsZ0NBQXFCLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDNUIsQ0FBQyxxQkFBVyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3JCLGVBQWUsRUFBRSx3QkFBd0I7WUFDekMsUUFBUSxFQUFFLG9CQUFZO1lBQ3RCLEtBQUssRUFBRSxFQUFFO1NBQ1Y7UUFDRCxDQUFDLHFCQUFXLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDckIsZUFBZSxFQUFFLHdCQUF3QjtZQUN6QyxRQUFRLEVBQUUsb0JBQVk7WUFDdEIsS0FBSyxFQUFFLEVBQUU7U0FDVjtLQUNGO0lBQ0QsQ0FBQyxnQ0FBcUIsQ0FBQyxNQUFNLENBQUMsRUFBRTtRQUM5QixDQUFDLHFCQUFXLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDckIsZUFBZSxFQUFFLHdCQUF3QjtZQUN6QyxRQUFRLEVBQUUsc0JBQWM7WUFDeEIsS0FBSyxFQUFFLENBQUMsU0FBUyxDQUFDO1NBQ25CO1FBQ0QsQ0FBQyxxQkFBVyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3JCLGVBQWUsRUFBRSx3QkFBd0I7WUFDekMsUUFBUSxFQUFFLHNCQUFjO1lBQ3hCLEtBQUssRUFBRSxDQUFDLFNBQVMsQ0FBQztTQUNuQjtLQUNGO0lBQ0QsQ0FBQyxnQ0FBcUIsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUM1QixDQUFDLHFCQUFXLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDckIsZUFBZSxFQUFFLHNCQUFzQjtZQUN2QyxRQUFRLEVBQUUsb0JBQVk7WUFDdEIsS0FBSyxFQUFFLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFDO1NBQ3BEO1FBQ0QsQ0FBQyxxQkFBVyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3JCLGVBQWUsRUFBRSxzQkFBc0I7WUFDdkMsUUFBUSxFQUFFLG9CQUFZO1lBQ3RCLEtBQUssRUFBRSxDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQztTQUNwRDtLQUNGO0lBQ0QsQ0FBQyxnQ0FBcUIsQ0FBQyxNQUFNLENBQUMsRUFBRTtRQUM5QixDQUFDLHFCQUFXLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDckIsZUFBZSxFQUFFLHNCQUFzQjtZQUN2QyxRQUFRLEVBQUUsc0JBQWM7WUFDeEIsS0FBSyxFQUFFLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQztTQUMvRDtRQUNELENBQUMscUJBQVcsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNyQixlQUFlLEVBQUUsc0JBQXNCO1lBQ3ZDLFFBQVEsRUFBRSxzQkFBYztZQUN4QixLQUFLLEVBQUUsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFDO1NBQy9EO0tBQ0Y7SUFDRCxDQUFDLGdDQUFxQixDQUFDLFFBQVEsQ0FBQyxFQUFFO1FBQ2hDLENBQUMscUJBQVcsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNyQixlQUFlLEVBQUUsc0JBQXNCO1lBQ3ZDLFFBQVEsRUFBRSx3QkFBZ0I7WUFDMUIsS0FBSyxFQUFFLENBQUMsU0FBUyxDQUFDO1NBQ25CO1FBQ0QsQ0FBQyxxQkFBVyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3JCLGVBQWUsRUFBRSxzQkFBc0I7WUFDdkMsUUFBUSxFQUFFLHdCQUFnQjtZQUMxQixLQUFLLEVBQUUsQ0FBQyxTQUFTLENBQUM7U0FDbkI7S0FDRjtJQUNELENBQUMsZ0NBQXFCLENBQUMsUUFBUSxDQUFDLEVBQUU7UUFDaEMsQ0FBQyxxQkFBVyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3JCLGVBQWUsRUFBRSx3QkFBd0I7WUFDekMsUUFBUSxFQUFFLHdCQUFnQjtZQUMxQixLQUFLLEVBQUUsQ0FBQyxTQUFTLENBQUM7U0FDbkI7UUFDRCxDQUFDLHFCQUFXLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDckIsZUFBZSxFQUFFLHdCQUF3QjtZQUN6QyxRQUFRLEVBQUUsd0JBQWdCO1lBQzFCLEtBQUssRUFBRSxDQUFDLFNBQVMsQ0FBQztTQUNuQjtLQUNGO0NBQ0YsQ0FBQztBQUVGOzs7R0FHRztBQUNILFNBQWdCLGtCQUFrQixDQUFDLElBQTJCLEVBQUUsT0FBb0I7SUFDbEYsT0FBTyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7QUFDbkMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5ldHdvcmtUeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBTdGFraW5nT3BlcmF0aW9uVHlwZXMgfSBmcm9tICcuLi9iYXNlQ29pbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udHJhY3RNZXRob2RDb25maWcge1xuICBjb250cmFjdEFkZHJlc3M6IHN0cmluZztcbiAgbWV0aG9kSWQ6IHN0cmluZztcbiAgdHlwZXM6IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgY29uc3QgTG9ja01ldGhvZElkID0gJzB4ZjgzZDA4YmEnOyAvLyBsb2NrKClcbmV4cG9ydCBjb25zdCBVbmxvY2tNZXRob2RJZCA9ICcweDYxOThlMzM5JzsgLy8gdW5sb2NrKClcbmV4cG9ydCBjb25zdCBWb3RlTWV0aG9kSWQgPSAnMHg1ODBkNzQ3YSc7IC8vIHZvdGUoKVxuZXhwb3J0IGNvbnN0IFVudm90ZU1ldGhvZElkID0gJzB4NmUxOTg0NzUnOyAvLyByZXZva2VBY3RpdmUoKVxuZXhwb3J0IGNvbnN0IEFjdGl2YXRlTWV0aG9kSWQgPSAnMHgxYzVhOWQ5Yyc7IC8vIGFjdGl2YXRlKClcbmV4cG9ydCBjb25zdCBXaXRoZHJhd01ldGhvZElkID0gJzB4MmUxYTdkNGQnOyAvLyB3aXRoZHJhdygpXG5cbmNvbnN0IExvY2tlZEdvbGRUZXN0bmV0QWRkcmVzcyA9ICcweDk0YzNlNjY3NTAxNWQ4NDc5YjY0ODY1N2U3ZGRmY2Q5Mzg0ODlkMGQnO1xuY29uc3QgTG9ja2VkR29sZE1haW5uZXRBZGRyZXNzID0gJzB4NmNjMDgzYWVkOWUzZWJlMzAyYTYzMzZkYmM3YzkyMWM5ZjAzMzQ5ZSc7XG5jb25zdCBFbGVjdGlvblRlc3RuZXRBZGRyZXNzID0gJzB4MTFmZTUyM2Y5M2NhYzE4NWQxMmNiMzljYzNiZDI3OWQyZGU1MjRmOCc7XG5jb25zdCBFbGVjdGlvbk1haW5uZXRBZGRyZXNzID0gJzB4OGQ2Njc3MTkyMTQ0MjkyODcwOTA3ZTNmYThhNTUyN2ZlNTVhN2ZmNic7XG5cbmNvbnN0IG9wZXJhdGlvbnMgPSB7XG4gIFtTdGFraW5nT3BlcmF0aW9uVHlwZXMuTE9DS106IHtcbiAgICBbTmV0d29ya1R5cGUuVEVTVE5FVF06IHtcbiAgICAgIGNvbnRyYWN0QWRkcmVzczogTG9ja2VkR29sZFRlc3RuZXRBZGRyZXNzLFxuICAgICAgbWV0aG9kSWQ6IExvY2tNZXRob2RJZCxcbiAgICAgIHR5cGVzOiBbXSxcbiAgICB9LFxuICAgIFtOZXR3b3JrVHlwZS5NQUlOTkVUXToge1xuICAgICAgY29udHJhY3RBZGRyZXNzOiBMb2NrZWRHb2xkTWFpbm5ldEFkZHJlc3MsXG4gICAgICBtZXRob2RJZDogTG9ja01ldGhvZElkLFxuICAgICAgdHlwZXM6IFtdLFxuICAgIH0sXG4gIH0sXG4gIFtTdGFraW5nT3BlcmF0aW9uVHlwZXMuVU5MT0NLXToge1xuICAgIFtOZXR3b3JrVHlwZS5URVNUTkVUXToge1xuICAgICAgY29udHJhY3RBZGRyZXNzOiBMb2NrZWRHb2xkVGVzdG5ldEFkZHJlc3MsXG4gICAgICBtZXRob2RJZDogVW5sb2NrTWV0aG9kSWQsXG4gICAgICB0eXBlczogWyd1aW50MjU2J10sXG4gICAgfSxcbiAgICBbTmV0d29ya1R5cGUuTUFJTk5FVF06IHtcbiAgICAgIGNvbnRyYWN0QWRkcmVzczogTG9ja2VkR29sZE1haW5uZXRBZGRyZXNzLFxuICAgICAgbWV0aG9kSWQ6IFVubG9ja01ldGhvZElkLFxuICAgICAgdHlwZXM6IFsndWludDI1NiddLFxuICAgIH0sXG4gIH0sXG4gIFtTdGFraW5nT3BlcmF0aW9uVHlwZXMuVk9URV06IHtcbiAgICBbTmV0d29ya1R5cGUuVEVTVE5FVF06IHtcbiAgICAgIGNvbnRyYWN0QWRkcmVzczogRWxlY3Rpb25UZXN0bmV0QWRkcmVzcyxcbiAgICAgIG1ldGhvZElkOiBWb3RlTWV0aG9kSWQsXG4gICAgICB0eXBlczogWydhZGRyZXNzJywgJ3VpbnQyNTYnLCAnYWRkcmVzcycsICdhZGRyZXNzJ10sXG4gICAgfSxcbiAgICBbTmV0d29ya1R5cGUuTUFJTk5FVF06IHtcbiAgICAgIGNvbnRyYWN0QWRkcmVzczogRWxlY3Rpb25NYWlubmV0QWRkcmVzcyxcbiAgICAgIG1ldGhvZElkOiBWb3RlTWV0aG9kSWQsXG4gICAgICB0eXBlczogWydhZGRyZXNzJywgJ3VpbnQyNTYnLCAnYWRkcmVzcycsICdhZGRyZXNzJ10sXG4gICAgfSxcbiAgfSxcbiAgW1N0YWtpbmdPcGVyYXRpb25UeXBlcy5VTlZPVEVdOiB7XG4gICAgW05ldHdvcmtUeXBlLlRFU1RORVRdOiB7XG4gICAgICBjb250cmFjdEFkZHJlc3M6IEVsZWN0aW9uVGVzdG5ldEFkZHJlc3MsXG4gICAgICBtZXRob2RJZDogVW52b3RlTWV0aG9kSWQsXG4gICAgICB0eXBlczogWydhZGRyZXNzJywgJ3VpbnQyNTYnLCAnYWRkcmVzcycsICdhZGRyZXNzJywgJ3VpbnQyNTYnXSxcbiAgICB9LFxuICAgIFtOZXR3b3JrVHlwZS5NQUlOTkVUXToge1xuICAgICAgY29udHJhY3RBZGRyZXNzOiBFbGVjdGlvbk1haW5uZXRBZGRyZXNzLFxuICAgICAgbWV0aG9kSWQ6IFVudm90ZU1ldGhvZElkLFxuICAgICAgdHlwZXM6IFsnYWRkcmVzcycsICd1aW50MjU2JywgJ2FkZHJlc3MnLCAnYWRkcmVzcycsICd1aW50MjU2J10sXG4gICAgfSxcbiAgfSxcbiAgW1N0YWtpbmdPcGVyYXRpb25UeXBlcy5BQ1RJVkFURV06IHtcbiAgICBbTmV0d29ya1R5cGUuVEVTVE5FVF06IHtcbiAgICAgIGNvbnRyYWN0QWRkcmVzczogRWxlY3Rpb25UZXN0bmV0QWRkcmVzcyxcbiAgICAgIG1ldGhvZElkOiBBY3RpdmF0ZU1ldGhvZElkLFxuICAgICAgdHlwZXM6IFsnYWRkcmVzcyddLFxuICAgIH0sXG4gICAgW05ldHdvcmtUeXBlLk1BSU5ORVRdOiB7XG4gICAgICBjb250cmFjdEFkZHJlc3M6IEVsZWN0aW9uTWFpbm5ldEFkZHJlc3MsXG4gICAgICBtZXRob2RJZDogQWN0aXZhdGVNZXRob2RJZCxcbiAgICAgIHR5cGVzOiBbJ2FkZHJlc3MnXSxcbiAgICB9LFxuICB9LFxuICBbU3Rha2luZ09wZXJhdGlvblR5cGVzLldJVEhEUkFXXToge1xuICAgIFtOZXR3b3JrVHlwZS5URVNUTkVUXToge1xuICAgICAgY29udHJhY3RBZGRyZXNzOiBMb2NrZWRHb2xkVGVzdG5ldEFkZHJlc3MsXG4gICAgICBtZXRob2RJZDogV2l0aGRyYXdNZXRob2RJZCxcbiAgICAgIHR5cGVzOiBbJ3VpbnQyNTYnXSxcbiAgICB9LFxuICAgIFtOZXR3b3JrVHlwZS5NQUlOTkVUXToge1xuICAgICAgY29udHJhY3RBZGRyZXNzOiBMb2NrZWRHb2xkTWFpbm5ldEFkZHJlc3MsXG4gICAgICBtZXRob2RJZDogV2l0aGRyYXdNZXRob2RJZCxcbiAgICAgIHR5cGVzOiBbJ3VpbnQyNTYnXSxcbiAgICB9LFxuICB9LFxufTtcblxuLyoqXG4gKiBAcGFyYW0gdHlwZVxuICogQHBhcmFtIG5ldHdvcmtcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldE9wZXJhdGlvbkNvbmZpZyh0eXBlOiBTdGFraW5nT3BlcmF0aW9uVHlwZXMsIG5ldHdvcms6IE5ldHdvcmtUeXBlKTogQ29udHJhY3RNZXRob2RDb25maWcge1xuICByZXR1cm4gb3BlcmF0aW9uc1t0eXBlXVtuZXR3b3JrXTtcbn1cbiJdfQ==
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { ExtendedKeys } from '../baseCoin';
|
|
2
|
+
/**
|
|
3
|
+
* @deprecated - use @bitgo-beta/sdk-lib-mpc instead
|
|
4
|
+
*/
|
|
5
|
+
export { bigIntToHex, convertBigIntArrToHexArr, convertHexArrToBigIntArr, hexToBigInt } from '@bitgo-beta/sdk-lib-mpc';
|
|
3
6
|
/**
|
|
4
7
|
* @param {string} xpub - a base-58 encoded extended public key (BIP32)
|
|
5
8
|
* @returns {string} the uncompressed public key in hexadecimal
|
|
@@ -80,26 +83,19 @@ export declare function isValidBLSPrivateKey(prv: string): boolean;
|
|
|
80
83
|
*/
|
|
81
84
|
export declare function isValidBLSPublicKey(pub: string): boolean;
|
|
82
85
|
/**
|
|
83
|
-
*
|
|
86
|
+
* Whether input is a valid BLS signature
|
|
84
87
|
*
|
|
85
|
-
* @param {
|
|
86
|
-
* @returns {
|
|
88
|
+
* @param {string} sig the signature to validate
|
|
89
|
+
* @returns {boolean} Whether input is a valid signature or not
|
|
87
90
|
*/
|
|
88
|
-
export declare function
|
|
91
|
+
export declare function isValidBLSSignature(sig: string): boolean;
|
|
89
92
|
/**
|
|
90
|
-
* Returns an hex string of the given
|
|
93
|
+
* Returns an hex string of the given buffer
|
|
91
94
|
*
|
|
92
|
-
* @param {
|
|
95
|
+
* @param {Buffer | Uint8Array} buffer - the buffer to be converted to hex
|
|
93
96
|
* @returns {string} - the hex value
|
|
94
97
|
*/
|
|
95
|
-
export declare function
|
|
96
|
-
/**
|
|
97
|
-
* Returns a BigInt value from hex
|
|
98
|
-
*
|
|
99
|
-
* @param {string} hex - hex value to be converted to bigint
|
|
100
|
-
* @returns {bigint} - bigint representation of the hex value
|
|
101
|
-
*/
|
|
102
|
-
export declare function hexToBigInt(hex: string): bigint;
|
|
98
|
+
export declare function toHex(buffer: Buffer | Uint8Array): string;
|
|
103
99
|
/**
|
|
104
100
|
* Check if base58 decoded string is equale to length
|
|
105
101
|
*
|
|
@@ -115,14 +111,4 @@ export declare function isBase58(value: string, length: number): boolean;
|
|
|
115
111
|
* @returns {string} - the Uint8Array value
|
|
116
112
|
*/
|
|
117
113
|
export declare function toUint8Array(str: string): Uint8Array;
|
|
118
|
-
/**
|
|
119
|
-
* Returns a bigint array from a hex string array
|
|
120
|
-
* @param values
|
|
121
|
-
*/
|
|
122
|
-
export declare function convertHexArrToBigIntArr(values: string[]): bigint[];
|
|
123
|
-
/**
|
|
124
|
-
* Returns a hex string array from a bigint array
|
|
125
|
-
* @param values
|
|
126
|
-
*/
|
|
127
|
-
export declare function convertBigIntArrToHexArr(values: bigint[]): string[];
|
|
128
114
|
//# sourceMappingURL=crypto.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../../../../src/account-lib/util/crypto.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../../../../src/account-lib/util/crypto.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C;;GAEG;AACH,OAAO,EAAE,WAAW,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAgBvH;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAExD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAUjD;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAM9D;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAYjD;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAYjD;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAO/C;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAO/C;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAOvD;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAO5D;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAO5D;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAMzD;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAOxD;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAOxD;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,CAEzD;AAED;;;;;;GAMG;AAEH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAM/D;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAEpD"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
@@ -11,24 +15,59 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
11
15
|
}) : function(o, v) {
|
|
12
16
|
o["default"] = v;
|
|
13
17
|
});
|
|
14
|
-
var __importStar = (this && this.__importStar) || function (
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
21
35
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
22
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
23
37
|
};
|
|
24
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
-
exports.
|
|
39
|
+
exports.hexToBigInt = exports.convertHexArrToBigIntArr = exports.convertBigIntArrToHexArr = exports.bigIntToHex = void 0;
|
|
40
|
+
exports.xpubToUncompressedPub = xpubToUncompressedPub;
|
|
41
|
+
exports.xpubToCompressedPub = xpubToCompressedPub;
|
|
42
|
+
exports.xprvToRawPrv = xprvToRawPrv;
|
|
43
|
+
exports.rawPrvToExtendedKeys = rawPrvToExtendedKeys;
|
|
44
|
+
exports.isValidXpub = isValidXpub;
|
|
45
|
+
exports.isValidXprv = isValidXprv;
|
|
46
|
+
exports.isValidPub = isValidPub;
|
|
47
|
+
exports.isValidPrv = isValidPrv;
|
|
48
|
+
exports.isValidEd25519Seed = isValidEd25519Seed;
|
|
49
|
+
exports.isValidEd25519SecretKey = isValidEd25519SecretKey;
|
|
50
|
+
exports.isValidEd25519PublicKey = isValidEd25519PublicKey;
|
|
51
|
+
exports.isValidBLSPrivateKey = isValidBLSPrivateKey;
|
|
52
|
+
exports.isValidBLSPublicKey = isValidBLSPublicKey;
|
|
53
|
+
exports.isValidBLSSignature = isValidBLSSignature;
|
|
54
|
+
exports.toHex = toHex;
|
|
55
|
+
exports.isBase58 = isBase58;
|
|
56
|
+
exports.toUint8Array = toUint8Array;
|
|
26
57
|
const utxo_lib_1 = require("@bitgo-beta/utxo-lib");
|
|
27
|
-
const nacl = __importStar(require("tweetnacl"));
|
|
28
58
|
const hex = __importStar(require("@stablelib/hex"));
|
|
59
|
+
const bs58_1 = __importDefault(require("bs58"));
|
|
29
60
|
const bls = __importStar(require("noble-bls12-381"));
|
|
30
61
|
const strip_hex_prefix_1 = __importDefault(require("strip-hex-prefix"));
|
|
31
|
-
const
|
|
62
|
+
const nacl = __importStar(require("tweetnacl"));
|
|
63
|
+
/**
|
|
64
|
+
* @deprecated - use @bitgo-beta/sdk-lib-mpc instead
|
|
65
|
+
*/
|
|
66
|
+
var sdk_lib_mpc_1 = require("@bitgo-beta/sdk-lib-mpc");
|
|
67
|
+
Object.defineProperty(exports, "bigIntToHex", { enumerable: true, get: function () { return sdk_lib_mpc_1.bigIntToHex; } });
|
|
68
|
+
Object.defineProperty(exports, "convertBigIntArrToHexArr", { enumerable: true, get: function () { return sdk_lib_mpc_1.convertBigIntArrToHexArr; } });
|
|
69
|
+
Object.defineProperty(exports, "convertHexArrToBigIntArr", { enumerable: true, get: function () { return sdk_lib_mpc_1.convertHexArrToBigIntArr; } });
|
|
70
|
+
Object.defineProperty(exports, "hexToBigInt", { enumerable: true, get: function () { return sdk_lib_mpc_1.hexToBigInt; } });
|
|
32
71
|
/**
|
|
33
72
|
* @param xpub - a base-58 encoded extended public key (BIP32)
|
|
34
73
|
* @param compressed flag to determine if return key should be compressed/uncompressed
|
|
@@ -49,7 +88,6 @@ function xPubToPub(xpub, compressed) {
|
|
|
49
88
|
function xpubToUncompressedPub(xpub) {
|
|
50
89
|
return xPubToPub(xpub, false);
|
|
51
90
|
}
|
|
52
|
-
exports.xpubToUncompressedPub = xpubToUncompressedPub;
|
|
53
91
|
/**
|
|
54
92
|
* @param {string} xpub - a base-58 encoded extended public key (BIP32)
|
|
55
93
|
* @returns {string} the uncompressed public key in hexadecimal
|
|
@@ -57,7 +95,6 @@ exports.xpubToUncompressedPub = xpubToUncompressedPub;
|
|
|
57
95
|
function xpubToCompressedPub(xpub) {
|
|
58
96
|
return xPubToPub(xpub, true);
|
|
59
97
|
}
|
|
60
|
-
exports.xpubToCompressedPub = xpubToCompressedPub;
|
|
61
98
|
/**
|
|
62
99
|
* @param {string} xprv - base58-encoded extended private key (BIP32)
|
|
63
100
|
* @returns {string} the hex-encoded raw private key
|
|
@@ -72,7 +109,6 @@ function xprvToRawPrv(xprv) {
|
|
|
72
109
|
}
|
|
73
110
|
return privateKey.toString('hex');
|
|
74
111
|
}
|
|
75
|
-
exports.xprvToRawPrv = xprvToRawPrv;
|
|
76
112
|
/**
|
|
77
113
|
* @param {string} prv - Private key in hex format to get the extended keys for
|
|
78
114
|
* @returns {ExtendedKeys} xprv and xpub in string format
|
|
@@ -84,7 +120,6 @@ function rawPrvToExtendedKeys(prv) {
|
|
|
84
120
|
xpub: hd.neutered().toBase58(),
|
|
85
121
|
};
|
|
86
122
|
}
|
|
87
|
-
exports.rawPrvToExtendedKeys = rawPrvToExtendedKeys;
|
|
88
123
|
/**
|
|
89
124
|
* Whether the input is a valid BIP32 xpub or not
|
|
90
125
|
*
|
|
@@ -104,7 +139,6 @@ function isValidXpub(xpub) {
|
|
|
104
139
|
// if HD generation didn't throw, it is a valid xpub
|
|
105
140
|
return true;
|
|
106
141
|
}
|
|
107
|
-
exports.isValidXpub = isValidXpub;
|
|
108
142
|
/**
|
|
109
143
|
* Whether the input is a valid BIP32 xprv or not
|
|
110
144
|
*
|
|
@@ -124,7 +158,6 @@ function isValidXprv(xprv) {
|
|
|
124
158
|
// if HD generation didn't throw, it is a valid xprv
|
|
125
159
|
return true;
|
|
126
160
|
}
|
|
127
|
-
exports.isValidXprv = isValidXprv;
|
|
128
161
|
/**
|
|
129
162
|
* Whether the input is a valid secp256k1 public key
|
|
130
163
|
*
|
|
@@ -139,7 +172,6 @@ function isValidPub(pub) {
|
|
|
139
172
|
}
|
|
140
173
|
return true;
|
|
141
174
|
}
|
|
142
|
-
exports.isValidPub = isValidPub;
|
|
143
175
|
/**
|
|
144
176
|
* Whether the input is a valid secp256k1 private key
|
|
145
177
|
*
|
|
@@ -154,7 +186,6 @@ function isValidPrv(prv) {
|
|
|
154
186
|
}
|
|
155
187
|
return true;
|
|
156
188
|
}
|
|
157
|
-
exports.isValidPrv = isValidPrv;
|
|
158
189
|
/**
|
|
159
190
|
* Whether the input is a valid ed25519 private key
|
|
160
191
|
*
|
|
@@ -170,7 +201,6 @@ function isValidEd25519Seed(prv) {
|
|
|
170
201
|
return false;
|
|
171
202
|
}
|
|
172
203
|
}
|
|
173
|
-
exports.isValidEd25519Seed = isValidEd25519Seed;
|
|
174
204
|
/**
|
|
175
205
|
* Whether the input is a valid ed25519 private key
|
|
176
206
|
*
|
|
@@ -186,7 +216,6 @@ function isValidEd25519SecretKey(prv) {
|
|
|
186
216
|
return false;
|
|
187
217
|
}
|
|
188
218
|
}
|
|
189
|
-
exports.isValidEd25519SecretKey = isValidEd25519SecretKey;
|
|
190
219
|
/**
|
|
191
220
|
* Whether the input is a valid ed25519 public key
|
|
192
221
|
*
|
|
@@ -202,7 +231,6 @@ function isValidEd25519PublicKey(pub) {
|
|
|
202
231
|
return false;
|
|
203
232
|
}
|
|
204
233
|
}
|
|
205
|
-
exports.isValidEd25519PublicKey = isValidEd25519PublicKey;
|
|
206
234
|
/**
|
|
207
235
|
* Whether the input is a valid BLS private key
|
|
208
236
|
*
|
|
@@ -217,7 +245,6 @@ function isValidBLSPrivateKey(prv) {
|
|
|
217
245
|
return false;
|
|
218
246
|
}
|
|
219
247
|
}
|
|
220
|
-
exports.isValidBLSPrivateKey = isValidBLSPrivateKey;
|
|
221
248
|
/**
|
|
222
249
|
* Whether input is a valid BLS public key
|
|
223
250
|
*
|
|
@@ -226,57 +253,37 @@ exports.isValidBLSPrivateKey = isValidBLSPrivateKey;
|
|
|
226
253
|
*/
|
|
227
254
|
function isValidBLSPublicKey(pub) {
|
|
228
255
|
try {
|
|
229
|
-
bls.PointG1.fromCompressedHex(strip_hex_prefix_1.default(pub)).assertValidity();
|
|
256
|
+
bls.PointG1.fromCompressedHex((0, strip_hex_prefix_1.default)(pub)).assertValidity();
|
|
230
257
|
return true;
|
|
231
258
|
}
|
|
232
259
|
catch (e) {
|
|
233
260
|
return false;
|
|
234
261
|
}
|
|
235
262
|
}
|
|
236
|
-
exports.isValidBLSPublicKey = isValidBLSPublicKey;
|
|
237
263
|
/**
|
|
238
|
-
*
|
|
264
|
+
* Whether input is a valid BLS signature
|
|
239
265
|
*
|
|
240
|
-
* @param {
|
|
241
|
-
* @returns {
|
|
266
|
+
* @param {string} sig the signature to validate
|
|
267
|
+
* @returns {boolean} Whether input is a valid signature or not
|
|
242
268
|
*/
|
|
243
|
-
function
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
* @param {bigint} bigint - the bigint to be converted to hex
|
|
251
|
-
* @returns {string} - the hex value
|
|
252
|
-
*/
|
|
253
|
-
function bigIntToHex(bigint, hexLength) {
|
|
254
|
-
let hex = bigint.toString(16);
|
|
255
|
-
hex = '0'.slice(0, hex.length % 2) + hex;
|
|
256
|
-
if (hexLength) {
|
|
257
|
-
hex = hex.padStart(hexLength, '0');
|
|
269
|
+
function isValidBLSSignature(sig) {
|
|
270
|
+
try {
|
|
271
|
+
bls.PointG2.fromSignature(sig).assertValidity();
|
|
272
|
+
return true;
|
|
273
|
+
}
|
|
274
|
+
catch (e) {
|
|
275
|
+
return false;
|
|
258
276
|
}
|
|
259
|
-
return hex;
|
|
260
277
|
}
|
|
261
|
-
exports.bigIntToHex = bigIntToHex;
|
|
262
278
|
/**
|
|
263
|
-
* Returns
|
|
279
|
+
* Returns an hex string of the given buffer
|
|
264
280
|
*
|
|
265
|
-
* @param {
|
|
266
|
-
* @returns {
|
|
281
|
+
* @param {Buffer | Uint8Array} buffer - the buffer to be converted to hex
|
|
282
|
+
* @returns {string} - the hex value
|
|
267
283
|
*/
|
|
268
|
-
function
|
|
269
|
-
|
|
270
|
-
// but it won't accept the same string without 0x to convert
|
|
271
|
-
// to a bigint (BigInt(hex string)). So have to introduce this
|
|
272
|
-
// check to convert to add 0x in case if hex string
|
|
273
|
-
// doesn't have it.
|
|
274
|
-
if (hex.slice(0, 2) === '0x') {
|
|
275
|
-
return BigInt(hex);
|
|
276
|
-
}
|
|
277
|
-
return BigInt('0x' + hex);
|
|
284
|
+
function toHex(buffer) {
|
|
285
|
+
return hex.encode(buffer, true);
|
|
278
286
|
}
|
|
279
|
-
exports.hexToBigInt = hexToBigInt;
|
|
280
287
|
/**
|
|
281
288
|
* Check if base58 decoded string is equale to length
|
|
282
289
|
*
|
|
@@ -292,7 +299,6 @@ function isBase58(value, length) {
|
|
|
292
299
|
return false;
|
|
293
300
|
}
|
|
294
301
|
}
|
|
295
|
-
exports.isBase58 = isBase58;
|
|
296
302
|
/**
|
|
297
303
|
* Returns a Uint8Array of the given hex string
|
|
298
304
|
*
|
|
@@ -302,25 +308,4 @@ exports.isBase58 = isBase58;
|
|
|
302
308
|
function toUint8Array(str) {
|
|
303
309
|
return hex.decode(str);
|
|
304
310
|
}
|
|
305
|
-
exports.toUint8Array = toUint8Array;
|
|
306
|
-
/**
|
|
307
|
-
* Returns a bigint array from a hex string array
|
|
308
|
-
* @param values
|
|
309
|
-
*/
|
|
310
|
-
function convertHexArrToBigIntArr(values) {
|
|
311
|
-
return values.map((value) => {
|
|
312
|
-
return hexToBigInt(value);
|
|
313
|
-
});
|
|
314
|
-
}
|
|
315
|
-
exports.convertHexArrToBigIntArr = convertHexArrToBigIntArr;
|
|
316
|
-
/**
|
|
317
|
-
* Returns a hex string array from a bigint array
|
|
318
|
-
* @param values
|
|
319
|
-
*/
|
|
320
|
-
function convertBigIntArrToHexArr(values) {
|
|
321
|
-
return values.map((value) => {
|
|
322
|
-
return bigIntToHex(value);
|
|
323
|
-
});
|
|
324
|
-
}
|
|
325
|
-
exports.convertBigIntArrToHexArr = convertBigIntArrToHexArr;
|
|
326
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J5cHRvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FjY291bnQtbGliL3V0aWwvY3J5cHRvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxtREFBK0Q7QUFDL0QsZ0RBQWtDO0FBQ2xDLG9EQUFzQztBQUN0QyxxREFBdUM7QUFDdkMsd0VBQThDO0FBRTlDLGdEQUF3QjtBQUV4Qjs7OztHQUlHO0FBQ0gsU0FBUyxTQUFTLENBQUMsSUFBWSxFQUFFLFVBQW1CO0lBQ2xELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQztLQUNqQztJQUNELE9BQU8saUJBQU0sQ0FBQyxhQUFhLENBQUMsZ0JBQUssQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLG1CQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBUyxFQUFFO1FBQzlFLFVBQVU7S0FDWCxDQUFDLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUMvQixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IscUJBQXFCLENBQUMsSUFBWTtJQUNoRCxPQUFPLFNBQVMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7QUFDaEMsQ0FBQztBQUZELHNEQUVDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IsbUJBQW1CLENBQUMsSUFBWTtJQUM5QyxPQUFPLFNBQVMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDL0IsQ0FBQztBQUZELGtEQUVDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IsWUFBWSxDQUFDLElBQVk7SUFDdkMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUN0QixNQUFNLElBQUksS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0tBQ2pDO0lBRUQsTUFBTSxFQUFFLFVBQVUs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QU0sS0FBSyxNQUFNLENBQUM7S0FDeEQ7SUFBQyxPQUFPLENBQUMsRUFBRTtRQUNWLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7QUFDSCxDQUFDO0FBTkQsNEJBTUM7QUFFRDs7Ozs7R0FLRztBQUNILFNBQWdCLFlBQVksQ0FBQyxHQUFXO0lBQ3RDLE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUN6QixDQUFDO0FBRkQsb0NBRUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFnQix3QkFBd0IsQ0FBQyxNQUFnQjtJQUN2RCxPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtRQUMxQixPQUFPLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFKRCw0REFJQztBQUVEOzs7R0FHRztBQUNILFNBQWdCLHdCQUF3QixDQUFDLE1BQWdCO0lBQ3ZELE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1FBQzFCLE9BQU8sV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVCLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUpELDREQUlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYmlwMzIsIEVDUGFpciwgbmV0d29ya3MgfSBmcm9tICdAYml0Z28tYmV0YS91dHhvLWxpYic7XG5pbXBvcnQgKiBhcyBuYWNsIGZyb20gJ3R3ZWV0bmFjbCc7XG5pbXBvcnQgKiBhcyBoZXggZnJvbSAnQHN0YWJsZWxpYi9oZXgnO1xuaW1wb3J0ICogYXMgYmxzIGZyb20gJ25vYmxlLWJsczEyLTM4MSc7XG5pbXBvcnQgc3RyaXBIZXhQcmVmaXggZnJvbSAnc3RyaXAtaGV4LXByZWZpeCc7XG5pbXBvcnQgeyBFeHRlbmRlZEtleXMgfSBmcm9tICcuLi9iYXNlQ29pbi9pZmFjZSc7XG5pbXBvcnQgYnM1OCBmcm9tICdiczU4JztcblxuLyoqXG4gKiBAcGFyYW0geHB1YiAtIGEgYmFzZS01OCBlbmNvZGVkIGV4dGVuZGVkIHB1YmxpYyBrZXkgKEJJUDMyKVxuICogQHBhcmFtIGNvbXByZXNzZWQgZmxhZyB0byBkZXRlcm1pbmUgaWYgcmV0dXJuIGtleSBzaG91bGQgYmUgY29tcHJlc3NlZC91bmNvbXByZXNzZWRcbiAqIEByZXR1cm4gYSBjb21wcmVzc2VkIG9yIGFuIHVuY29tcHJlc3NlZWQgcHVibGljIGtleSBpbiBoZXhhZGVjaW1hbFxuICovXG5mdW5jdGlvbiB4UHViVG9QdWIoeHB1Yjogc3RyaW5nLCBjb21wcmVzc2VkOiBib29sZWFuKSB7XG4gIGlmICghaXNWYWxpZFhwdWIoeHB1YikpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgeHB1YicpO1xuICB9XG4gIHJldHVybiBFQ1BhaXIuZnJvbVB1YmxpY0tleShiaXAzMi5mcm9tQmFzZTU4KHhwdWIsIG5ldHdvcmtzLmJpdGNvaW4pLnB1YmxpY0tleSwge1xuICAgIGNvbXByZXNzZWQsXG4gIH0pLnB1YmxpY0tleS50b1N0cmluZygnaGV4Jyk7XG59XG5cbi8qKlxuICogQHBhcmFtIHtzdHJpbmd9IHhwdWIgLSBhIGJhc2UtNTggZW5jb2RlZCBleHRlbmRlZCBwdWJsaWMga2V5IChCSVAzMilcbiAqIEByZXR1cm5zIHtzdHJpbmd9IHRoZSB1bmNvbXByZXNzZWQgcHVibGljIGtleSBpbiBoZXhhZGVjaW1hbFxuICovXG5leHBvcnQgZnVuY3Rpb24geHB1YlRvVW5jb21wcmVzc2VkUHViKHhwdWI6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiB4UHViVG9QdWIoeHB1YiwgZmFsc2UpO1xufVxuXG4vKipcbiAqIEBwYXJhbSB7c3RyaW5nfSB4cHViIC0gYSBiYXNlLTU4IGVuY29kZWQgZXh0ZW5kZWQgcHVibGljIGtleSAoQklQMzIpXG4gKiBAcmV0dXJucyB7c3RyaW5nfSB0aGUgdW5jb21wcmVzc2VkIHB1YmxpYyBrZXkgaW4gaGV4YWRlY2ltYWxcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHhwdWJUb0NvbXByZXNzZWRQdWIoeHB1Yjogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIHhQdWJUb1B1Yih4cHViLCB0cnVlKTtcbn1cblxuLyoqXG4gKiBAcGFyYW0ge3N0cmluZ30geHBydiAtIGJhc2U1OC1lbmNvZGVkIGV4dGVuZGVkIHByaXZhdGUga2V5IChCSVAzMilcbiAqIEByZXR1cm5zIHtzdHJpbmd9IHRoZSBoZXgtZW5jb2RlZCByYXcgcHJpdmF0ZSBrZXlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHhwcnZUb1Jhd1Bydih4cHJ2OiBzdHJpbmcpOiBzdHJpbmcge1xuICBpZiAoIWlzVmFsaWRYcHJ2KHhwcnYpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIHhwcnYnKTtcbiAgfVxuXG4gIGNvbnN0IHsgcHJpdmF0ZUtleSB9ID0gYmlwMzIuZnJvbUJhc2U1OCh4cHJ2LCBuZXR3b3Jrcy5iaXRjb2luKTtcbiAgaWYgKCFwcml2YXRlS2V5KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIHhwcnYnKTtcbiAgfVxuICByZXR1cm4gcHJpdmF0ZUtleS50b1N0cmluZygnaGV4Jyk7XG59XG5cbi8qKlxuICogQHBhcmFtIHtzdHJpbmd9IHBydiAtIFByaXZhdGUga2V5IGluIGhleCBmb3JtYXQgdG8gZ2V0IHRoZSBleHRlbmRlZCBrZXlzIGZvclxuICogQHJldHVybnMge0V4dGVuZGVkS2V5c30geHBydiBhbmQgeHB1YiBpbiBzdHJpbmcgZm9ybWF0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByYXdQcnZUb0V4dGVuZGVkS2V5cyhwcnY6IHN0cmluZyk6IEV4dGVuZGVkS2V5cyB7XG4gIGNvbnN0IGhkID0gYmlwMzIuZnJvbVByaXZhdGVLZXkoQnVmZmVyLmZyb20ocHJ2LCAnaGV4JyksIEJ1ZmZlci5hbGxvYygzMikpO1xuICByZXR1cm4ge1xuICAgIHhwcnY6IGhkLnRvQmFzZTU4KCksXG4gICAgeHB1YjogaGQubmV1dGVyZWQoKS50b0Jhc2U1OCgpLFxuICB9O1xufVxuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGlucHV0IGlzIGEgdmFsaWQgQklQMzIgeHB1YiBvciBub3RcbiAqXG4gKiBAcGFyYW0geHB1YlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNWYWxpZFhwdWIoeHB1Yjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIGlmICh4cHViLnN1YnN0cigwLCA0KSAhPT0gJ3hwdWInKSB7XG4gICAgLy8gY2hlY2sgZm9yIHhwdWIgZm9ybWF0cyB3ZSBkb24ndCBzdXBwb3J0LCBzdWNoIGFzIHRwdWJcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgdHJ5IHtcbiAgICBiaXAzMi5mcm9tQmFzZTU4KHhwdWIsIG5ldHdvcmtzLmJpdGNvaW4pO1xuICB9IGNhdGNoIChlcnIpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgLy8gaWYgSEQgZ2VuZXJhdGlvbiBkaWRuJ3QgdGhyb3csIGl0IGlzIGEgdmFsaWQgeHB1YlxuICByZXR1cm4gdHJ1ZTtcbn1cblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBpbnB1dCBpcyBhIHZhbGlkIEJJUDMyIHhwcnYgb3Igbm90XG4gKlxuICogQHBhcmFtIHhwcnZcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWRYcHJ2KHhwcnY6IHN0cmluZyk6IGJvb2xlYW4ge1xuICBpZiAoeHBydi5zdWJzdHIoMCwgNCkgIT09ICd4cHJ2Jykge1xuICAgIC8vIGNoZWNrIGZvciB4cHJ2IGZvcm1hdHMgd2UgZG9uJ3Qgc3VwcG9ydFxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICB0cnkge1xuICAgIGJpcDMyLmZyb21CYXNlNTgoeHBydiwgbmV0d29ya3MuYml0Y29pbik7XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICAvLyBpZiBIRCBnZW5lcmF0aW9uIGRpZG4ndCB0aHJvdywgaXQgaXMgYSB2YWxpZCB4cHJ2XG4gIHJldHVybiB0cnVlO1xufVxuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGlucHV0IGlzIGEgdmFsaWQgc2VjcDI1NmsxIHB1YmxpYyBrZXlcbiAqXG4gKiBAcGFyYW0gcHViXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1ZhbGlkUHViKHB1Yjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHRyeSB7XG4gICAgRUNQYWlyLmZyb21QdWJsaWNLZXkoQnVmZmVyLmZyb20ocHViLCAnaGV4JykpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHJldHVybiB0cnVlO1xufVxuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGlucHV0IGlzIGEgdmFsaWQgc2VjcDI1NmsxIHByaXZhdGUga2V5XG4gKlxuICogQHBhcmFtIHBydlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNWYWxpZFBydihwcnY6IHN0cmluZyk6IGJvb2xlYW4ge1xuICB0cnkge1xuICAgIEVDUGFpci5mcm9tUHJpdmF0ZUtleShCdWZmZXIuZnJvbShwcnYsICdoZXgnKSk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgcmV0dXJuIHRydWU7XG59XG5cbi8qKlxuICogV2hldGhlciB0aGUgaW5wdXQgaXMgYSB2YWxpZCBlZDI1NTE5IHByaXZhdGUga2V5XG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IHBydiBBIGhleGFkZWNpbWFsIHByaXZhdGUga2V5IHRvIHZhbGlkYXRlXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gV2hldGhlciB0aGUgaW5wdXQgaXMgYSB2YWxpZCBwdWJsaWMga2V5IG9yIG5vdFxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNWYWxpZEVkMjU1MTlTZWVkKHBydjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHRyeSB7XG4gICAgY29uc3QgZGVjb2RlZFBydiA9IHRvVWludDhBcnJheShwcnYpO1xuICAgIHJldHVybiBkZWNvZGVkUHJ2Lmxlbmd0aCA9PT0gbmFjbC5zaWduLnNlZWRMZW5ndGg7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBpbnB1dCBpcyBhIHZhbGlkIGVkMjU1MTkgcHJpdmF0ZSBrZXlcbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gcHJ2IEEgaGV4YWRlY2ltYWwgcHJpdmF0ZSBrZXkgdG8gdmFsaWRhdGVcbiAqIEByZXR1cm5zIHtib29sZWFufSBXaGV0aGVyIHRoZSBpbnB1dCBpcyBhIHZhbGlkIHB1YmxpYyBrZXkgb3Igbm90XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1ZhbGlkRWQyNTUxOVNlY3JldEtleShwcnY6IHN0cmluZyk6IGJvb2xlYW4ge1xuICB0cnkge1xuICAgIGNvbnN0IGRlY29kZWRQcnYgPSB0b1VpbnQ4QXJyYXkocHJ2KTtcbiAgICByZXR1cm4gZGVjb2RlZFBydi5sZW5ndGggPT09IG5hY2wuc2lnbi5zZWNyZXRLZXlMZW5ndGg7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBpbnB1dCBpcyBhIHZhbGlkIGVkMjU1MTkgcHVibGljIGtleVxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBwdWIgQSBoZXhhZGVjaW1hbCBwdWJsaWMga2V5IHRvIHZhbGlkYXRlXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gV2hldGhlciB0aGUgaW5wdXQgaXMgYSB2YWxpZCBwdWJsaWMga2V5IG9yIG5vdFxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNWYWxpZEVkMjU1MTlQdWJsaWNLZXkocHViOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgdHJ5IHtcbiAgICBjb25zdCBkZWNvZGVkUHViID0gbmV3IFVpbnQ4QXJyYXkoQnVmZmVyLmZyb20ocHViLCAnaGV4JykpO1xuICAgIHJldHVybiBkZWNvZGVkUHViLmxlbmd0aCA9PT0gbmFjbC5zaWduLnB1YmxpY0tleUxlbmd0aDtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGlucHV0IGlzIGEgdmFsaWQgQkxTIHByaXZhdGUga2V5XG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IHBydiBhIHByaXZhdGUga2V5IHRvIHZhbGlkYXRlXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gV2hldGhlciB0aGUgaW5wdXQgaXMgYSB2YWxpZCBwcml2YXRlIGtleSBvciBub3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWRCTFNQcml2YXRlS2V5KHBydjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIGJscy5Gci5pc1ZhbGlkKEJpZ0ludCgnMHgnICsgcHJ2KSk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cblxuLyoqXG4gKiBXaGV0aGVyIGlucHV0IGlzIGEgdmFsaWQgQkxTIHB1YmxpYyBrZXlcbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gcHViIHRoZSBwdWJsaWMga2V5IHRvIHZhbGlkYXRlXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gV2hldGhlciBpbnB1dCBpcyBhIHZhbGlkIHB1YmxpYyBrZXkgb3Igbm90XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1ZhbGlkQkxTUHVibGljS2V5KHB1Yjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHRyeSB7XG4gICAgYmxzLlBvaW50RzEuZnJvbUNvbXByZXNzZWRIZXgoc3RyaXBIZXhQcmVmaXgocHViKSkuYXNzZXJ0VmFsaWRpdHkoKTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG4vKipcbiAqIFJldHVybnMgYW4gaGV4IHN0cmluZyBvZiB0aGUgZ2l2ZW4gYnVmZmVyXG4gKlxuICogQHBhcmFtIHtCdWZmZXIgfCBVaW50OEFycmF5fSBidWZmZXIgLSB0aGUgYnVmZmVyIHRvIGJlIGNvbnZlcnRlZCB0byBoZXhcbiAqIEByZXR1cm5zIHtzdHJpbmd9IC0gdGhlIGhleCB2YWx1ZVxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9IZXgoYnVmZmVyOiBCdWZmZXIgfCBVaW50OEFycmF5KTogc3RyaW5nIHtcbiAgcmV0dXJuIGhleC5lbmNvZGUoYnVmZmVyLCB0cnVlKTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIGFuIGhleCBzdHJpbmcgb2YgdGhlIGdpdmVuIGJpZ2ludFxuICpcbiAqIEBwYXJhbSB7YmlnaW50fSBiaWdpbnQgLSB0aGUgYmlnaW50IHRvIGJlIGNvbnZlcnRlZCB0byBoZXhcbiAqIEByZXR1cm5zIHtzdHJpbmd9IC0gdGhlIGhleCB2YWx1ZVxuICovXG5leHBvcnQgZnVuY3Rpb24gYmlnSW50VG9IZXgoYmlnaW50OiBiaWdpbnQsIGhleExlbmd0aD86IG51bWJlcik6IHN0cmluZyB7XG4gIGxldCBoZXggPSBiaWdpbnQudG9TdHJpbmcoMTYpO1xuICBoZXggPSAnMCcuc2xpY2UoMCwgaGV4Lmxlbmd0aCAlIDIpICsgaGV4O1xuICBpZiAoaGV4TGVuZ3RoKSB7XG4gICAgaGV4ID0gaGV4LnBhZFN0YXJ0KGhleExlbmd0aCwgJzAnKTtcbiAgfVxuICByZXR1cm4gaGV4O1xufVxuXG4vKipcbiAqIFJldHVybnMgYSBCaWdJbnQgdmFsdWUgZnJvbSBoZXhcbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gaGV4IC0gaGV4IHZhbHVlIHRvIGJlIGNvbnZlcnRlZCB0byBiaWdpbnRcbiAqIEByZXR1cm5zIHtiaWdpbnR9IC0gYmlnaW50IHJlcHJlc2VudGF0aW9uIG9mIHRoZSBoZXggdmFsdWVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGhleFRvQmlnSW50KGhleDogc3RyaW5nKTogYmlnaW50IHtcbiAgLy8gU3RyYW5nZWx5IGJpZ2ludC50b1N0cmluZygxNikgZ2l2ZXMgYSBoZXggc3RyaW5nIHdpdGhvdXQgMHhcbiAgLy8gYnV0IGl0IHdvbid0IGFjY2VwdCB0aGUgc2FtZSBzdHJpbmcgd2l0aG91dCAweCB0byBjb252ZXJ0XG4gIC8vIHRvIGEgYmlnaW50IChCaWdJbnQoaGV4IHN0cmluZykpLiBTbyBoYXZlIHRvIGludHJvZHVjZSB0aGlzXG4gIC8vIGNoZWNrIHRvIGNvbnZlcnQgdG8gYWRkIDB4IGluIGNhc2UgaWYgaGV4IHN0cmluZ1xuICAvLyBkb2Vzbid0IGhhdmUgaXQuXG4gIGlmIChoZXguc2xpY2UoMCwgMikgPT09ICcweCcpIHtcbiAgICByZXR1cm4gQmlnSW50KGhleCk7XG4gIH1cbiAgcmV0dXJuIEJpZ0ludCgnMHgnICsgaGV4KTtcbn1cblxuLyoqXG4gKiBDaGVjayBpZiBiYXNlNTggZGVjb2RlZCBzdHJpbmcgaXMgZXF1YWxlIHRvIGxlbmd0aFxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSB2YWx1ZSAtIHN0cmluZyB0byBiZSBjaGVja2VkXG4gKiBAcGFyYW0ge251bWJlcn0gbGVuZ3RoIC0gZXhwZWN0ZWQgZGVjb2RlZCBsZW5ndGhcbiAqIEByZXR1cm4ge2Jvb2xlYW59IGlmIHRoZSBzdHJpbmcgY2FuIGRlY29kZWQgYXMgYmFzZTU4IGFuZCBtYXRjaCB0aGUgZXhwZWN0ZWQgbGVuZ3RoXG4gKi9cblxuZXhwb3J0IGZ1bmN0aW9uIGlzQmFzZTU4KHZhbHVlOiBzdHJpbmcsIGxlbmd0aDogbnVtYmVyKTogYm9vbGVhbiB7XG4gIHRyeSB7XG4gICAgcmV0dXJuICEhdmFsdWUgJiYgYnM1OC5kZWNvZGUodmFsdWUpLmxlbmd0aCA9PT0gbGVuZ3RoO1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbi8qKlxuICogUmV0dXJucyBhIFVpbnQ4QXJyYXkgb2YgdGhlIGdpdmVuIGhleCBzdHJpbmdcbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gc3RyIC0gdGhlIGhleCBzdHJpbmcgdG8gYmUgY29udmVydGVkXG4gKiBAcmV0dXJucyB7c3RyaW5nfSAtIHRoZSBVaW50OEFycmF5IHZhbHVlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b1VpbnQ4QXJyYXkoc3RyOiBzdHJpbmcpOiBVaW50OEFycmF5IHtcbiAgcmV0dXJuIGhleC5kZWNvZGUoc3RyKTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIGEgYmlnaW50IGFycmF5IGZyb20gYSBoZXggc3RyaW5nIGFycmF5XG4gKiBAcGFyYW0gdmFsdWVzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb252ZXJ0SGV4QXJyVG9CaWdJbnRBcnIodmFsdWVzOiBzdHJpbmdbXSk6IGJpZ2ludFtdIHtcbiAgcmV0dXJuIHZhbHVlcy5tYXAoKHZhbHVlKSA9PiB7XG4gICAgcmV0dXJuIGhleFRvQmlnSW50KHZhbHVlKTtcbiAgfSk7XG59XG5cbi8qKlxuICogUmV0dXJucyBhIGhleCBzdHJpbmcgYXJyYXkgZnJvbSBhIGJpZ2ludCBhcnJheVxuICogQHBhcmFtIHZhbHVlc1xuICovXG5leHBvcnQgZnVuY3Rpb24gY29udmVydEJpZ0ludEFyclRvSGV4QXJyKHZhbHVlczogYmlnaW50W10pOiBzdHJpbmdbXSB7XG4gIHJldHVybiB2YWx1ZXMubWFwKCh2YWx1ZSkgPT4ge1xuICAgIHJldHVybiBiaWdJbnRUb0hleCh2YWx1ZSk7XG4gIH0pO1xufVxuIl19
|
|
311
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J5cHRvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FjY291bnQtbGliL3V0aWwvY3J5cHRvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQStCQSxzREFFQztBQU1ELGtEQUVDO0FBTUQsb0NBVUM7QUFNRCxvREFNQztBQU9ELGtDQVlDO0FBT0Qsa0NBWUM7QUFPRCxnQ0FPQztBQU9ELGdDQU9DO0FBUUQsZ0RBT0M7QUFRRCwwREFPQztBQVFELDBEQU9DO0FBUUQsb0RBTUM7QUFRRCxrREFPQztBQVFELGtEQU9DO0FBUUQsc0JBRUM7QUFVRCw0QkFNQztBQVFELG9DQUVDO0FBcFFELG1EQUErRDtBQUMvRCxvREFBc0M7QUFDdEMsZ0RBQXdCO0FBQ3hCLHFEQUF1QztBQUN2Qyx3RUFBOEM7QUFDOUMsZ0RBQWtDO0FBR2xDOztHQUVHO0FBQ0gsdURBQXVIO0FBQTlHLDBHQUFBLFdBQVcsT0FBQTtBQUFFLHVIQUFBLHdCQUF3QixPQUFBO0FBQUUsdUhBQUEsd0JBQXdCLE9BQUE7QUFBRSwwR0FBQSxXQUFXLE9BQUE7QUFFckY7Ozs7R0FJRztBQUNILFNBQVMsU0FBUyxDQUFDLElBQVksRUFBRSxVQUFtQjtJQUNsRCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDdkIsTUFBTSxJQUFJLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBQ0QsT0FBTyxpQkFBTSxDQUFDLGFBQWEsQ0FBQyxnQkFBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsbUJBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTLEVBQUU7UUFDOUUsVUFBVTtLQUNYLENBQUMsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQy9CLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFnQixxQkFBcUIsQ0FBQyxJ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QUFLLENBQUMsQ0FBQyxNQUFNLEtBQUssTUFBTSxDQUFDO0lBQ3pELENBQUM7SUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQ1gsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0FBQ0gsQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsU0FBZ0IsWUFBWSxDQUFDLEdBQVc7SUFDdEMsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ3pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBiaXAzMiwgRUNQYWlyLCBuZXR3b3JrcyB9IGZyb20gJ0BiaXRnby1iZXRhL3V0eG8tbGliJztcbmltcG9ydCAqIGFzIGhleCBmcm9tICdAc3RhYmxlbGliL2hleCc7XG5pbXBvcnQgYnM1OCBmcm9tICdiczU4JztcbmltcG9ydCAqIGFzIGJscyBmcm9tICdub2JsZS1ibHMxMi0zODEnO1xuaW1wb3J0IHN0cmlwSGV4UHJlZml4IGZyb20gJ3N0cmlwLWhleC1wcmVmaXgnO1xuaW1wb3J0ICogYXMgbmFjbCBmcm9tICd0d2VldG5hY2wnO1xuaW1wb3J0IHsgRXh0ZW5kZWRLZXlzIH0gZnJvbSAnLi4vYmFzZUNvaW4nO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkIC0gdXNlIEBiaXRnby1iZXRhL3Nkay1saWItbXBjIGluc3RlYWRcbiAqL1xuZXhwb3J0IHsgYmlnSW50VG9IZXgsIGNvbnZlcnRCaWdJbnRBcnJUb0hleEFyciwgY29udmVydEhleEFyclRvQmlnSW50QXJyLCBoZXhUb0JpZ0ludCB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1saWItbXBjJztcblxuLyoqXG4gKiBAcGFyYW0geHB1YiAtIGEgYmFzZS01OCBlbmNvZGVkIGV4dGVuZGVkIHB1YmxpYyBrZXkgKEJJUDMyKVxuICogQHBhcmFtIGNvbXByZXNzZWQgZmxhZyB0byBkZXRlcm1pbmUgaWYgcmV0dXJuIGtleSBzaG91bGQgYmUgY29tcHJlc3NlZC91bmNvbXByZXNzZWRcbiAqIEByZXR1cm4gYSBjb21wcmVzc2VkIG9yIGFuIHVuY29tcHJlc3NlZWQgcHVibGljIGtleSBpbiBoZXhhZGVjaW1hbFxuICovXG5mdW5jdGlvbiB4UHViVG9QdWIoeHB1Yjogc3RyaW5nLCBjb21wcmVzc2VkOiBib29sZWFuKSB7XG4gIGlmICghaXNWYWxpZFhwdWIoeHB1YikpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgeHB1YicpO1xuICB9XG4gIHJldHVybiBFQ1BhaXIuZnJvbVB1YmxpY0tleShiaXAzMi5mcm9tQmFzZTU4KHhwdWIsIG5ldHdvcmtzLmJpdGNvaW4pLnB1YmxpY0tleSwge1xuICAgIGNvbXByZXNzZWQsXG4gIH0pLnB1YmxpY0tleS50b1N0cmluZygnaGV4Jyk7XG59XG5cbi8qKlxuICogQHBhcmFtIHtzdHJpbmd9IHhwdWIgLSBhIGJhc2UtNTggZW5jb2RlZCBleHRlbmRlZCBwdWJsaWMga2V5IChCSVAzMilcbiAqIEByZXR1cm5zIHtzdHJpbmd9IHRoZSB1bmNvbXByZXNzZWQgcHVibGljIGtleSBpbiBoZXhhZGVjaW1hbFxuICovXG5leHBvcnQgZnVuY3Rpb24geHB1YlRvVW5jb21wcmVzc2VkUHViKHhwdWI6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiB4UHViVG9QdWIoeHB1YiwgZmFsc2UpO1xufVxuXG4vKipcbiAqIEBwYXJhbSB7c3RyaW5nfSB4cHViIC0gYSBiYXNlLTU4IGVuY29kZWQgZXh0ZW5kZWQgcHVibGljIGtleSAoQklQMzIpXG4gKiBAcmV0dXJucyB7c3RyaW5nfSB0aGUgdW5jb21wcmVzc2VkIHB1YmxpYyBrZXkgaW4gaGV4YWRlY2ltYWxcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHhwdWJUb0NvbXByZXNzZWRQdWIoeHB1Yjogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIHhQdWJUb1B1Yih4cHViLCB0cnVlKTtcbn1cblxuLyoqXG4gKiBAcGFyYW0ge3N0cmluZ30geHBydiAtIGJhc2U1OC1lbmNvZGVkIGV4dGVuZGVkIHByaXZhdGUga2V5IChCSVAzMilcbiAqIEByZXR1cm5zIHtzdHJpbmd9IHRoZSBoZXgtZW5jb2RlZCByYXcgcHJpdmF0ZSBrZXlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHhwcnZUb1Jhd1Bydih4cHJ2OiBzdHJpbmcpOiBzdHJpbmcge1xuICBpZiAoIWlzVmFsaWRYcHJ2KHhwcnYpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIHhwcnYnKTtcbiAgfVxuXG4gIGNvbnN0IHsgcHJpdmF0ZUtleSB9ID0gYmlwMzIuZnJvbUJhc2U1OCh4cHJ2LCBuZXR3b3Jrcy5iaXRjb2luKTtcbiAgaWYgKCFwcml2YXRlS2V5KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIHhwcnYnKTtcbiAgfVxuICByZXR1cm4gcHJpdmF0ZUtleS50b1N0cmluZygnaGV4Jyk7XG59XG5cbi8qKlxuICogQHBhcmFtIHtzdHJpbmd9IHBydiAtIFByaXZhdGUga2V5IGluIGhleCBmb3JtYXQgdG8gZ2V0IHRoZSBleHRlbmRlZCBrZXlzIGZvclxuICogQHJldHVybnMge0V4dGVuZGVkS2V5c30geHBydiBhbmQgeHB1YiBpbiBzdHJpbmcgZm9ybWF0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByYXdQcnZUb0V4dGVuZGVkS2V5cyhwcnY6IHN0cmluZyk6IEV4dGVuZGVkS2V5cyB7XG4gIGNvbnN0IGhkID0gYmlwMzIuZnJvbVByaXZhdGVLZXkoQnVmZmVyLmZyb20ocHJ2LCAnaGV4JyksIEJ1ZmZlci5hbGxvYygzMikpO1xuICByZXR1cm4ge1xuICAgIHhwcnY6IGhkLnRvQmFzZTU4KCksXG4gICAgeHB1YjogaGQubmV1dGVyZWQoKS50b0Jhc2U1OCgpLFxuICB9O1xufVxuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGlucHV0IGlzIGEgdmFsaWQgQklQMzIgeHB1YiBvciBub3RcbiAqXG4gKiBAcGFyYW0geHB1YlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNWYWxpZFhwdWIoeHB1Yjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIGlmICh4cHViLnN1YnN0cigwLCA0KSAhPT0gJ3hwdWInKSB7XG4gICAgLy8gY2hlY2sgZm9yIHhwdWIgZm9ybWF0cyB3ZSBkb24ndCBzdXBwb3J0LCBzdWNoIGFzIHRwdWJcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgdHJ5IHtcbiAgICBiaXAzMi5mcm9tQmFzZTU4KHhwdWIsIG5ldHdvcmtzLmJpdGNvaW4pO1xuICB9IGNhdGNoIChlcnIpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgLy8gaWYgSEQgZ2VuZXJhdGlvbiBkaWRuJ3QgdGhyb3csIGl0IGlzIGEgdmFsaWQgeHB1YlxuICByZXR1cm4gdHJ1ZTtcbn1cblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBpbnB1dCBpcyBhIHZhbGlkIEJJUDMyIHhwcnYgb3Igbm90XG4gKlxuICogQHBhcmFtIHhwcnZcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWRYcHJ2KHhwcnY6IHN0cmluZyk6IGJvb2xlYW4ge1xuICBpZiAoeHBydi5zdWJzdHIoMCwgNCkgIT09ICd4cHJ2Jykge1xuICAgIC8vIGNoZWNrIGZvciB4cHJ2IGZvcm1hdHMgd2UgZG9uJ3Qgc3VwcG9ydFxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICB0cnkge1xuICAgIGJpcDMyLmZyb21CYXNlNTgoeHBydiwgbmV0d29ya3MuYml0Y29pbik7XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICAvLyBpZiBIRCBnZW5lcmF0aW9uIGRpZG4ndCB0aHJvdywgaXQgaXMgYSB2YWxpZCB4cHJ2XG4gIHJldHVybiB0cnVlO1xufVxuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGlucHV0IGlzIGEgdmFsaWQgc2VjcDI1NmsxIHB1YmxpYyBrZXlcbiAqXG4gKiBAcGFyYW0gcHViXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1ZhbGlkUHViKHB1Yjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHRyeSB7XG4gICAgRUNQYWlyLmZyb21QdWJsaWNLZXkoQnVmZmVyLmZyb20ocHViLCAnaGV4JykpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHJldHVybiB0cnVlO1xufVxuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGlucHV0IGlzIGEgdmFsaWQgc2VjcDI1NmsxIHByaXZhdGUga2V5XG4gKlxuICogQHBhcmFtIHBydlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNWYWxpZFBydihwcnY6IHN0cmluZyk6IGJvb2xlYW4ge1xuICB0cnkge1xuICAgIEVDUGFpci5mcm9tUHJpdmF0ZUtleShCdWZmZXIuZnJvbShwcnYsICdoZXgnKSk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgcmV0dXJuIHRydWU7XG59XG5cbi8qKlxuICogV2hldGhlciB0aGUgaW5wdXQgaXMgYSB2YWxpZCBlZDI1NTE5IHByaXZhdGUga2V5XG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IHBydiBBIGhleGFkZWNpbWFsIHByaXZhdGUga2V5IHRvIHZhbGlkYXRlXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gV2hldGhlciB0aGUgaW5wdXQgaXMgYSB2YWxpZCBwdWJsaWMga2V5IG9yIG5vdFxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNWYWxpZEVkMjU1MTlTZWVkKHBydjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHRyeSB7XG4gICAgY29uc3QgZGVjb2RlZFBydiA9IHRvVWludDhBcnJheShwcnYpO1xuICAgIHJldHVybiBkZWNvZGVkUHJ2Lmxlbmd0aCA9PT0gbmFjbC5zaWduLnNlZWRMZW5ndGg7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBpbnB1dCBpcyBhIHZhbGlkIGVkMjU1MTkgcHJpdmF0ZSBrZXlcbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gcHJ2IEEgaGV4YWRlY2ltYWwgcHJpdmF0ZSBrZXkgdG8gdmFsaWRhdGVcbiAqIEByZXR1cm5zIHtib29sZWFufSBXaGV0aGVyIHRoZSBpbnB1dCBpcyBhIHZhbGlkIHB1YmxpYyBrZXkgb3Igbm90XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1ZhbGlkRWQyNTUxOVNlY3JldEtleShwcnY6IHN0cmluZyk6IGJvb2xlYW4ge1xuICB0cnkge1xuICAgIGNvbnN0IGRlY29kZWRQcnYgPSB0b1VpbnQ4QXJyYXkocHJ2KTtcbiAgICByZXR1cm4gZGVjb2RlZFBydi5sZW5ndGggPT09IG5hY2wuc2lnbi5zZWNyZXRLZXlMZW5ndGg7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBpbnB1dCBpcyBhIHZhbGlkIGVkMjU1MTkgcHVibGljIGtleVxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBwdWIgQSBoZXhhZGVjaW1hbCBwdWJsaWMga2V5IHRvIHZhbGlkYXRlXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gV2hldGhlciB0aGUgaW5wdXQgaXMgYSB2YWxpZCBwdWJsaWMga2V5IG9yIG5vdFxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNWYWxpZEVkMjU1MTlQdWJsaWNLZXkocHViOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgdHJ5IHtcbiAgICBjb25zdCBkZWNvZGVkUHViID0gbmV3IFVpbnQ4QXJyYXkoQnVmZmVyLmZyb20ocHViLCAnaGV4JykpO1xuICAgIHJldHVybiBkZWNvZGVkUHViLmxlbmd0aCA9PT0gbmFjbC5zaWduLnB1YmxpY0tleUxlbmd0aDtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGlucHV0IGlzIGEgdmFsaWQgQkxTIHByaXZhdGUga2V5XG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IHBydiBhIHByaXZhdGUga2V5IHRvIHZhbGlkYXRlXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gV2hldGhlciB0aGUgaW5wdXQgaXMgYSB2YWxpZCBwcml2YXRlIGtleSBvciBub3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWRCTFNQcml2YXRlS2V5KHBydjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIGJscy5Gci5pc1ZhbGlkKEJpZ0ludCgnMHgnICsgcHJ2KSk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cblxuLyoqXG4gKiBXaGV0aGVyIGlucHV0IGlzIGEgdmFsaWQgQkxTIHB1YmxpYyBrZXlcbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gcHViIHRoZSBwdWJsaWMga2V5IHRvIHZhbGlkYXRlXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gV2hldGhlciBpbnB1dCBpcyBhIHZhbGlkIHB1YmxpYyBrZXkgb3Igbm90XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1ZhbGlkQkxTUHVibGljS2V5KHB1Yjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHRyeSB7XG4gICAgYmxzLlBvaW50RzEuZnJvbUNvbXByZXNzZWRIZXgoc3RyaXBIZXhQcmVmaXgocHViKSkuYXNzZXJ0VmFsaWRpdHkoKTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG4vKipcbiAqIFdoZXRoZXIgaW5wdXQgaXMgYSB2YWxpZCBCTFMgc2lnbmF0dXJlXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IHNpZyB0aGUgc2lnbmF0dXJlIHRvIHZhbGlkYXRlXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gV2hldGhlciBpbnB1dCBpcyBhIHZhbGlkIHNpZ25hdHVyZSBvciBub3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWRCTFNTaWduYXR1cmUoc2lnOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgdHJ5IHtcbiAgICBibHMuUG9pbnRHMi5mcm9tU2lnbmF0dXJlKHNpZykuYXNzZXJ0VmFsaWRpdHkoKTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG4vKipcbiAqIFJldHVybnMgYW4gaGV4IHN0cmluZyBvZiB0aGUgZ2l2ZW4gYnVmZmVyXG4gKlxuICogQHBhcmFtIHtCdWZmZXIgfCBVaW50OEFycmF5fSBidWZmZXIgLSB0aGUgYnVmZmVyIHRvIGJlIGNvbnZlcnRlZCB0byBoZXhcbiAqIEByZXR1cm5zIHtzdHJpbmd9IC0gdGhlIGhleCB2YWx1ZVxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9IZXgoYnVmZmVyOiBCdWZmZXIgfCBVaW50OEFycmF5KTogc3RyaW5nIHtcbiAgcmV0dXJuIGhleC5lbmNvZGUoYnVmZmVyLCB0cnVlKTtcbn1cblxuLyoqXG4gKiBDaGVjayBpZiBiYXNlNTggZGVjb2RlZCBzdHJpbmcgaXMgZXF1YWxlIHRvIGxlbmd0aFxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSB2YWx1ZSAtIHN0cmluZyB0byBiZSBjaGVja2VkXG4gKiBAcGFyYW0ge251bWJlcn0gbGVuZ3RoIC0gZXhwZWN0ZWQgZGVjb2RlZCBsZW5ndGhcbiAqIEByZXR1cm4ge2Jvb2xlYW59IGlmIHRoZSBzdHJpbmcgY2FuIGRlY29kZWQgYXMgYmFzZTU4IGFuZCBtYXRjaCB0aGUgZXhwZWN0ZWQgbGVuZ3RoXG4gKi9cblxuZXhwb3J0IGZ1bmN0aW9uIGlzQmFzZTU4KHZhbHVlOiBzdHJpbmcsIGxlbmd0aDogbnVtYmVyKTogYm9vbGVhbiB7XG4gIHRyeSB7XG4gICAgcmV0dXJuICEhdmFsdWUgJiYgYnM1OC5kZWNvZGUodmFsdWUpLmxlbmd0aCA9PT0gbGVuZ3RoO1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbi8qKlxuICogUmV0dXJucyBhIFVpbnQ4QXJyYXkgb2YgdGhlIGdpdmVuIGhleCBzdHJpbmdcbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gc3RyIC0gdGhlIGhleCBzdHJpbmcgdG8gYmUgY29udmVydGVkXG4gKiBAcmV0dXJucyB7c3RyaW5nfSAtIHRoZSBVaW50OEFycmF5IHZhbHVlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b1VpbnQ4QXJyYXkoc3RyOiBzdHJpbmcpOiBVaW50OEFycmF5IHtcbiAgcmV0dXJuIGhleC5kZWNvZGUoc3RyKTtcbn1cbiJdfQ==
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
1
|
export interface HdKeypair {
|
|
3
2
|
key: Buffer;
|
|
4
3
|
chainCode: Buffer;
|
|
@@ -9,6 +8,8 @@ export interface HdKeypair {
|
|
|
9
8
|
*
|
|
10
9
|
* https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0005.md
|
|
11
10
|
* https://github.com/satoshilabs/slips/blob/master/slip-0010.md
|
|
11
|
+
*
|
|
12
|
+
* @deprecated
|
|
12
13
|
*/
|
|
13
14
|
export declare class Ed25519KeyDeriver {
|
|
14
15
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ed25519KeyDeriver.d.ts","sourceRoot":"","sources":["../../../../src/account-lib/util/ed25519KeyDeriver.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ed25519KeyDeriver.d.ts","sourceRoot":"","sources":["../../../../src/account-lib/util/ed25519KeyDeriver.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;GAQG;AACH,qBAAa,iBAAiB;IAC5B;;;;;;;OAOG;IAEH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAkB;IACvD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAc;IACrD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAkC;IAEpE;;;;;OAKG;WACW,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS;IAY/D;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAWnC;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,OAAO;IAatB,OAAO,CAAC,MAAM,CAAC,aAAa,CAA+D;IAC3F,OAAO,CAAC,MAAM,CAAC,WAAW;CAM3B"}
|
|
@@ -14,6 +14,8 @@ const create_hmac_1 = __importDefault(require("create-hmac"));
|
|
|
14
14
|
*
|
|
15
15
|
* https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0005.md
|
|
16
16
|
* https://github.com/satoshilabs/slips/blob/master/slip-0010.md
|
|
17
|
+
*
|
|
18
|
+
* @deprecated
|
|
17
19
|
*/
|
|
18
20
|
class Ed25519KeyDeriver {
|
|
19
21
|
/**
|
|
@@ -36,7 +38,7 @@ class Ed25519KeyDeriver {
|
|
|
36
38
|
* @param seed master key seed used to recreate master key
|
|
37
39
|
*/
|
|
38
40
|
static getMasterKeyFromSeed(seed) {
|
|
39
|
-
const hmac = create_hmac_1.default('sha512', Ed25519KeyDeriver.ED25519_CURVE);
|
|
41
|
+
const hmac = (0, create_hmac_1.default)('sha512', Ed25519KeyDeriver.ED25519_CURVE);
|
|
40
42
|
const I = hmac.update(Buffer.from(seed, 'hex')).digest();
|
|
41
43
|
const IL = I.slice(0, 32);
|
|
42
44
|
const IR = I.slice(32);
|
|
@@ -56,7 +58,7 @@ class Ed25519KeyDeriver {
|
|
|
56
58
|
const indexBuffer = Buffer.allocUnsafe(4);
|
|
57
59
|
indexBuffer.writeUInt32BE(index, 0);
|
|
58
60
|
const data = Buffer.concat([Buffer.alloc(1, 0), key, indexBuffer]);
|
|
59
|
-
const I = create_hmac_1.default('sha512', chainCode).update(data).digest();
|
|
61
|
+
const I = (0, create_hmac_1.default)('sha512', chainCode).update(data).digest();
|
|
60
62
|
const IL = I.slice(0, 32);
|
|
61
63
|
const IR = I.slice(32);
|
|
62
64
|
return {
|
|
@@ -84,4 +86,4 @@ Ed25519KeyDeriver.ED25519_CURVE = 'ed25519 seed';
|
|
|
84
86
|
Ed25519KeyDeriver.HARDENED_OFFSET = 0x80000000;
|
|
85
87
|
Ed25519KeyDeriver.PATH_REGEX = new RegExp("^m(\\/[0-9]+')+$");
|
|
86
88
|
Ed25519KeyDeriver.replaceDerive = (val) => parseInt(val.replace("'", ''), 10);
|
|
87
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
89
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWQyNTUxOUtleURlcml2ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvdXRpbC9lZDI1NTE5S2V5RGVyaXZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTs7R0FFRztBQUNILDhEQUFxQztBQU9yQzs7Ozs7Ozs7R0FRRztBQUNILE1BQWEsaUJBQWlCO0lBYzVCOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFZLEVBQUUsSUFBWTtRQUNqRCxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQzVCLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztRQUM3QyxDQUFDO1FBQ0QsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0QsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNsRSxPQUFPLFFBQVEsQ0FBQyxNQUFNLENBQ3BCLENBQUMsVUFBVSxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsT0FBTyxHQUFHLGlCQUFpQixDQUFDLGVBQWUsQ0FBQyxFQUM5RixFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsQ0FDbkIsQ0FBQztJQUNKLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ssTUFBTSxDQUFDLG9CQUFvQixDQUFDLElBQVk7UUFDOUMsTUFBTSxJQUFJLEdBQUcsSUFBQSxxQkFBVSxFQUFDLFFBQVEsRUFBRSxpQkFBaUIsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNuRSxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDekQsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDMUIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN2QixPQUFPO1lBQ0wsR0FBRyxFQUFFLEVBQUU7WUFDUCxTQUFTLEVBQUUsRUFBRTtTQUNkLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ssTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQWEsRUFBRSxLQUFhO1FBQ2pFLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDcEMsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQ25FLE1BQU0sQ0FBQyxHQUFHLElBQUEscUJBQVUsRUFBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2hFLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzFCLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdkIsT0FBTztZQUNMLEdBQUcsRUFBRSxFQUFFO1lBQ1AsU0FBUyxFQUFFLEVBQUU7U0FDZCxDQUFDO0lBQ0osQ0FBQztJQUdPLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBWTtRQUNyQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQzdDLE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQztRQUNELE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2RSxDQUFDOztBQTFFSCw4Q0EyRUM7QUExRUM7Ozs7Ozs7R0FPRztBQUVxQiwrQkFBYSxHQUFHLGNBQWMsQ0FBQztBQUMvQixpQ0FBZSxHQUFHLFVBQVUsQ0FBQztBQUM3Qiw0QkFBVSxHQUFHLElBQUksTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7QUF3RHJELCtCQUFhLEdBQUcsQ0FBQyxHQUFXLEVBQVUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHByZXR0aWVyXG4gKi9cbmltcG9ydCBjcmVhdGVIbWFjIGZyb20gJ2NyZWF0ZS1obWFjJztcblxuZXhwb3J0IGludGVyZmFjZSBIZEtleXBhaXIge1xuICBrZXk6IEJ1ZmZlcjtcbiAgY2hhaW5Db2RlOiBCdWZmZXI7XG59XG5cbi8qKlxuICogSGVpcmFyY2hpY2FsIGRldGVybWluaXNpdGljIGtleSBkZXJpdmF0aW9uIGZvciB0aGUgZWQyNTUxOSBlbGxpcHRpYyBjdXJ2ZSxcbiAqIGFzIGRlZmluZWQgaW4gU0xJUC0wMDEwLlxuICpcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9zdGVsbGFyL3N0ZWxsYXItcHJvdG9jb2wvYmxvYi9tYXN0ZXIvZWNvc3lzdGVtL3NlcC0wMDA1Lm1kXG4gKiBodHRwczovL2dpdGh1Yi5jb20vc2F0b3NoaWxhYnMvc2xpcHMvYmxvYi9tYXN0ZXIvc2xpcC0wMDEwLm1kXG4gKlxuICogQGRlcHJlY2F0ZWRcbiAqL1xuZXhwb3J0IGNsYXNzIEVkMjU1MTlLZXlEZXJpdmVyIHtcbiAgLyoqXG4gICAqIFRoaXMga2V5IGRlcml2YXRpb24gY29kZSB3YXMgY29waWVkIGFuZCBhZGFwdGVkIGZyb206XG4gICAqIGh0dHBzOi8vZ2l0aHViLmNvbS9jaGF0Y2gvc3RlbGxhci1oZC13YWxsZXQvYmxvYi82MTJjMTIzMjVjYTkwNDdkY2U0NjAwMTZmYjdkMTQ4ZjU1ZjU3NWNhL3NyYy9oZC1rZXkuanNcbiAgICpcbiAgICogVGhlcmUgaGF2ZSBiZWVuIHNvbWUgc2xpZ2h0IG1vZGlmaWNhdGlvbnMgdG8gaW1wcm92ZSB0eXBlc2NyaXB0IHN1cHBvcnQuXG4gICAqXG4gICAqIFRoZSBvcmlnaW5hbCBlZDI1NTE5LWhkLWtleSBtb2R1bGUgaXMgbGljZW5zZWQgdW5kZXIgXCJHUEwtM1wiLlxuICAgKi9cblxuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBFRDI1NTE5X0NVUlZFID0gJ2VkMjU1MTkgc2VlZCc7XG4gIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IEhBUkRFTkVEX09GRlNFVCA9IDB4ODAwMDAwMDA7XG4gIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IFBBVEhfUkVHRVggPSBuZXcgUmVnRXhwKFwiXm0oXFxcXC9bMC05XSsnKSskXCIpO1xuXG4gIC8qKlxuICAgKiBEZXJpdmUgYSBTTElQLTAwMTAga2V5IGdpdmVuIGEgcGF0aCBhbmQgbWFzdGVyIGtleSBzZWVkLlxuICAgKlxuICAgKiBAcGFyYW0gcGF0aCBkZXJpdmF0aW9uIHBhdGhcbiAgICogQHBhcmFtIHNlZWQga2V5IHNlZWRcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZGVyaXZlUGF0aChwYXRoOiBzdHJpbmcsIHNlZWQ6IHN0cmluZyk6IEhkS2V5cGFpciB7XG4gICAgaWYgKCF0aGlzLmlzVmFsaWRQYXRoKHBhdGgpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgZGVyaXZhdGlvbiBwYXRoJyk7XG4gICAgfVxuICAgIGNvbnN0IHsga2V5LCBjaGFpbkNvZGUgfSA9IHRoaXMuZ2V0TWFzdGVyS2V5RnJvbVNlZWQoc2VlZCk7XG4gICAgY29uc3Qgc2VnbWVudHMgPSBwYXRoLnNwbGl0KCcvJykuc2xpY2UoMSkubWFwKHRoaXMucmVwbGFjZURlcml2ZSk7XG4gICAgcmV0dXJuIHNlZ21lbnRzLnJlZHVjZShcbiAgICAgIChwYXJlbnRLZXlzLCBzZWdtZW50KSA9PiB0aGlzLkNLRFByaXYocGFyZW50S2V5cywgc2VnbWVudCArIEVkMjU1MTlLZXlEZXJpdmVyLkhBUkRFTkVEX09GRlNFVCksXG4gICAgICB7IGtleSwgY2hhaW5Db2RlIH1cbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlIGEgU0xJUC0wMDEwIG1hc3RlciBrZXkgZnJvbSB0aGUgZW50cm9weSBzZWVkXG4gICAqXG4gICAqIEBwYXJhbSBzZWVkIG1hc3RlciBrZXkgc2VlZCB1c2VkIHRvIHJlY3JlYXRlIG1hc3RlciBrZXlcbiAgICovXG4gIHByaXZhdGUgc3RhdGljIGdldE1hc3RlcktleUZyb21TZWVkKHNlZWQ6IHN0cmluZykge1xuICAgIGNvbnN0IGhtYWMgPSBjcmVhdGVIbWFjKCdzaGE1MTInLCBFZDI1NTE5S2V5RGVyaXZlci5FRDI1NTE5X0NVUlZFKTtcbiAgICBjb25zdCBJID0gaG1hYy51cGRhdGUoQnVmZmVyLmZyb20oc2VlZCwgJ2hleCcpKS5kaWdlc3QoKTtcbiAgICBjb25zdCBJTCA9IEkuc2xpY2UoMCwgMzIpO1xuICAgIGNvbnN0IElSID0gSS5zbGljZSgzMik7XG4gICAgcmV0dXJuIHtcbiAgICAgIGtleTogSUwsXG4gICAgICBjaGFpbkNvZGU6IElSLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQ2FsY3VsYXRlIGEgY2hpbGQgcHJpdmF0ZSBrZXkgZ2l2ZW4gdGhlIHBhcmVudCBrZXksIHRoZSBjaGFpbiBjb2RlLCBhbmQgdGhlIGNoaWxkIGluZGV4LlxuICAgKlxuICAgKiBAcGFyYW0ga2V5IHBhcmVudCBrZXlcbiAgICogQHBhcmFtIGNoYWluQ29kZSBjaGFpbiBjb2RlIGZvciBwYXJlbnQga2V5XG4gICAqIEBwYXJhbSBpbmRleCBpbmRleCBvZiBjaGlsZCB0byBkZXJpdmVcbiAgICovXG4gIHByaXZhdGUgc3RhdGljIENLRFByaXYoeyBrZXksIGNoYWluQ29kZSB9OiBIZEtleXBhaXIsIGluZGV4OiBudW1iZXIpOiBIZEtleXBhaXIge1xuICAgIGNvbnN0IGluZGV4QnVmZmVyID0gQnVmZmVyLmFsbG9jVW5zYWZlKDQpO1xuICAgIGluZGV4QnVmZmVyLndyaXRlVUludDMyQkUoaW5kZXgsIDApO1xuICAgIGNvbnN0IGRhdGEgPSBCdWZmZXIuY29uY2F0KFtCdWZmZXIuYWxsb2MoMSwgMCksIGtleSwgaW5kZXhCdWZmZXJdKTtcbiAgICBjb25zdCBJID0gY3JlYXRlSG1hYygnc2hhNTEyJywgY2hhaW5Db2RlKS51cGRhdGUoZGF0YSkuZGlnZXN0KCk7XG4gICAgY29uc3QgSUwgPSBJLnNsaWNlKDAsIDMyKTtcbiAgICBjb25zdCBJUiA9IEkuc2xpY2UoMzIpO1xuICAgIHJldHVybiB7XG4gICAgICBrZXk6IElMLFxuICAgICAgY2hhaW5Db2RlOiBJUixcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgcmVwbGFjZURlcml2ZSA9ICh2YWw6IHN0cmluZyk6IG51bWJlciA9PiBwYXJzZUludCh2YWwucmVwbGFjZShcIidcIiwgJycpLCAxMCk7XG4gIHByaXZhdGUgc3RhdGljIGlzVmFsaWRQYXRoKHBhdGg6IHN0cmluZykge1xuICAgIGlmICghRWQyNTUxOUtleURlcml2ZXIuUEFUSF9SRUdFWC50ZXN0KHBhdGgpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHJldHVybiAhcGF0aC5zcGxpdCgnLycpLnNsaWNlKDEpLm1hcCh0aGlzLnJlcGxhY2VEZXJpdmUpLnNvbWUoaXNOYU4pO1xuICB9XG59XG4iXX0=
|