@bitgo-beta/sdk-core 8.2.1-beta.97 → 8.2.1-beta.971
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 +2811 -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 +3 -3
- package/dist/src/account-lib/baseCoin/baseTransactionBuilder.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/baseTransactionBuilder.js +4 -3
- 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 +17 -3
- package/dist/src/account-lib/baseCoin/enum.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/enum.js +32 -7
- package/dist/src/account-lib/baseCoin/errors.d.ts +3 -0
- package/dist/src/account-lib/baseCoin/errors.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/errors.js +8 -2
- package/dist/src/account-lib/baseCoin/iface.d.ts +11 -35
- package/dist/src/account-lib/baseCoin/iface.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/iface.js +4 -18
- package/dist/src/account-lib/baseCoin/index.d.ts +1 -1
- package/dist/src/account-lib/baseCoin/index.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/index.js +8 -5
- package/dist/src/account-lib/baseCoin/messages/baseMessage.d.ts +76 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessage.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessage.js +120 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.d.ts +66 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.js +96 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts +33 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.js +34 -0
- package/dist/src/account-lib/baseCoin/messages/iface.d.ts +156 -0
- package/dist/src/account-lib/baseCoin/messages/iface.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/messages/iface.js +3 -0
- package/dist/src/account-lib/baseCoin/messages/index.d.ts +5 -0
- package/dist/src/account-lib/baseCoin/messages/index.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/messages/index.js +21 -0
- package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.d.ts +1 -2
- package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.js +38 -26
- 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 +38 -9
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.js +497 -349
- package/dist/src/account-lib/mpc/tss/ecdsa/index.js +23 -9
- package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.d.ts +2 -2
- package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.js +3 -3
- package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts +73 -52
- 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 +66 -69
- package/dist/src/account-lib/mpc/tss/eddsa/index.js +23 -9
- package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts +1 -1
- 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 +8 -2
- package/dist/src/account-lib/util/crypto.d.ts.map +1 -1
- package/dist/src/account-lib/util/crypto.js +69 -38
- 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 +8 -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/bitgo/address-book/index.js +19 -0
- 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 +90 -10
- package/dist/src/bitgo/baseCoin/baseCoin.d.ts.map +1 -1
- package/dist/src/bitgo/baseCoin/baseCoin.js +142 -16
- package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts +111 -19
- package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts.map +1 -1
- package/dist/src/bitgo/baseCoin/iBaseCoin.js +7 -3
- package/dist/src/bitgo/baseCoin/index.js +6 -2
- package/dist/src/bitgo/bip32util.d.ts +3 -16
- package/dist/src/bitgo/bip32util.d.ts.map +1 -1
- package/dist/src/bitgo/bip32util.js +4 -56
- 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 +6 -2
- 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 +17 -3
- package/dist/src/bitgo/coinFactory.d.ts.map +1 -1
- package/dist/src/bitgo/coinFactory.js +26 -3
- package/dist/src/bitgo/config.d.ts +94 -20
- package/dist/src/bitgo/config.d.ts.map +1 -1
- package/dist/src/bitgo/config.js +26 -15
- 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 +16 -14
- package/dist/src/bitgo/enterprise/enterprise.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/enterprise.js +64 -31
- 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 +6 -7
- 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 +60 -5
- package/dist/src/bitgo/environments.d.ts.map +1 -1
- package/dist/src/bitgo/environments.js +96 -32
- package/dist/src/bitgo/errors.d.ts +6 -0
- package/dist/src/bitgo/errors.d.ts.map +1 -1
- package/dist/src/bitgo/errors.js +14 -2
- package/dist/src/bitgo/index.d.ts +1 -1
- package/dist/src/bitgo/index.d.ts.map +1 -1
- package/dist/src/bitgo/index.js +26 -11
- 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 +63 -7
- 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 +128 -37
- package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts +3 -3
- package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts.map +1 -1
- package/dist/src/bitgo/keychain/ovcJsonCodec.js +23 -9
- 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/lightningWalletUtil.d.ts +7 -0
- package/dist/src/bitgo/lightning/lightningWalletUtil.d.ts.map +1 -0
- package/dist/src/bitgo/lightning/lightningWalletUtil.js +25 -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 +1 -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 +221 -107
- 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/goStakingWallet.d.ts +36 -0
- package/dist/src/bitgo/staking/goStakingWallet.d.ts.map +1 -0
- package/dist/src/bitgo/staking/goStakingWallet.js +92 -0
- package/dist/src/bitgo/staking/iGoStakingWallet.d.ts +44 -0
- package/dist/src/bitgo/staking/iGoStakingWallet.d.ts.map +1 -0
- package/dist/src/bitgo/staking/iGoStakingWallet.js +3 -0
- package/dist/src/bitgo/staking/iStakingWallet.d.ts +120 -4
- 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.d.ts +2 -0
- package/dist/src/bitgo/staking/index.d.ts.map +1 -1
- package/dist/src/bitgo/staking/index.js +8 -2
- package/dist/src/bitgo/staking/stakingWallet.d.ts +13 -2
- package/dist/src/bitgo/staking/stakingWallet.d.ts.map +1 -1
- package/dist/src/bitgo/staking/stakingWallet.js +45 -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 +37 -5
- package/dist/src/bitgo/tss/common.d.ts.map +1 -1
- package/dist/src/bitgo/tss/common.js +103 -17
- package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts +6 -4
- package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/bitgo/tss/ecdsa/ecdsa.js +78 -66
- 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 +11 -8
- package/dist/src/bitgo/tss/eddsa/eddsa.d.ts.map +1 -1
- package/dist/src/bitgo/tss/eddsa/eddsa.js +38 -41
- 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 +3 -3
- 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/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 +3 -2
- package/dist/src/bitgo/utils/index.d.ts.map +1 -1
- package/dist/src/bitgo/utils/index.js +26 -11
- package/dist/src/bitgo/utils/messageTypes.d.ts +34 -0
- package/dist/src/bitgo/utils/messageTypes.d.ts.map +1 -0
- package/dist/src/bitgo/utils/messageTypes.js +12 -0
- package/dist/src/bitgo/utils/mpcUtils.d.ts +2 -3
- package/dist/src/bitgo/utils/mpcUtils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/mpcUtils.js +34 -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 -9
- package/dist/src/bitgo/utils/opengpgUtils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/opengpgUtils.js +74 -73
- 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 +39 -14
- package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/baseTSSUtils.js +145 -45
- package/dist/src/bitgo/utils/tss/baseTypes.d.ts +202 -34
- package/dist/src/bitgo/utils/tss/baseTypes.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/baseTypes.js +22 -20
- 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 +28 -0
- package/dist/src/bitgo/utils/tss/ecdsa/base.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/ecdsa/base.js +53 -0
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts +20 -52
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.js +145 -280
- 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 +950 -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 +15 -9
- 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 +5 -3
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.js +75 -58
- 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 +203 -19
- 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 +91 -16
- package/dist/src/bitgo/wallet/iWallets.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/iWallets.js +43 -3
- package/dist/src/bitgo/wallet/index.js +6 -2
- package/dist/src/bitgo/wallet/wallet.d.ts +192 -25
- package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/wallet.js +945 -357
- package/dist/src/bitgo/wallet/wallets.d.ts +96 -9
- package/dist/src/bitgo/wallet/wallets.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/wallets.js +816 -193
- package/dist/src/bitgo/webhook/index.js +6 -2
- package/dist/src/bitgo/webhook/webhooks.js +23 -9
- package/dist/src/coins/fiataed.d.ts +32 -0
- package/dist/src/coins/fiataed.d.ts.map +1 -0
- package/dist/src/coins/fiataed.js +61 -0
- package/dist/src/coins/fiateur.d.ts +3 -2
- package/dist/src/coins/fiateur.d.ts.map +1 -1
- package/dist/src/coins/fiateur.js +5 -1
- package/dist/src/coins/fiatgbp.d.ts +3 -2
- package/dist/src/coins/fiatgbp.d.ts.map +1 -1
- package/dist/src/coins/fiatgbp.js +5 -1
- package/dist/src/coins/fiatsgd.d.ts +32 -0
- package/dist/src/coins/fiatsgd.d.ts.map +1 -0
- package/dist/src/coins/fiatsgd.js +61 -0
- package/dist/src/coins/fiatusd.d.ts +3 -2
- package/dist/src/coins/fiatusd.d.ts.map +1 -1
- package/dist/src/coins/fiatusd.js +5 -1
- package/dist/src/coins/index.d.ts +4 -0
- package/dist/src/coins/index.d.ts.map +1 -1
- package/dist/src/coins/index.js +10 -2
- package/dist/src/coins/ofc.d.ts +3 -2
- package/dist/src/coins/ofc.d.ts.map +1 -1
- package/dist/src/coins/ofc.js +6 -2
- package/dist/src/coins/ofcToken.js +2 -2
- package/dist/src/coins/susd.d.ts +3 -2
- package/dist/src/coins/susd.d.ts.map +1 -1
- package/dist/src/coins/susd.js +5 -1
- package/dist/src/coins/tfiataed.d.ts +11 -0
- package/dist/src/coins/tfiataed.d.ts.map +1 -0
- package/dist/src/coins/tfiataed.js +17 -0
- package/dist/src/coins/tfiatsgd.d.ts +11 -0
- package/dist/src/coins/tfiatsgd.d.ts.map +1 -0
- package/dist/src/coins/tfiatsgd.js +17 -0
- package/dist/src/common.js +27 -13
- package/dist/src/index.d.ts +2 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +26 -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/baseCoin/messages/baseMessage.d.ts +2 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.d.ts.map +1 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.js +204 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.d.ts +2 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.d.ts.map +1 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.js +130 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts +2 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts.map +1 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.js +86 -0
- package/dist/test/unit/account-lib/baseCoin/messages/fixtures.d.ts +36 -0
- package/dist/test/unit/account-lib/baseCoin/messages/fixtures.d.ts.map +1 -0
- package/dist/test/unit/account-lib/baseCoin/messages/fixtures.js +70 -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/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/messageTypes.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/messageTypes.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/messageTypes.js +76 -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 -1
- package/package.json +25 -22
- package/dist/src/account-lib/baseCoin/blsKeyPair.d.ts +0 -77
- package/dist/src/account-lib/baseCoin/blsKeyPair.d.ts.map +0 -1
- package/dist/src/account-lib/baseCoin/blsKeyPair.js +0 -209
- 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 +0 -186
- 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/index.d.ts +0 -5
- package/dist/src/bitgo/lightning/index.d.ts.map +0 -1
- package/dist/src/bitgo/lightning/index.js +0 -17
- package/dist/src/bitgo/lightning/lightning.d.ts +0 -25
- 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/lightningUtils.d.ts +0 -46
- package/dist/src/bitgo/lightning/lightningUtils.d.ts.map +0 -1
- package/dist/src/bitgo/lightning/lightningUtils.js +0 -133
- package/dist/src/bitgo/lightning/lnurlCodec.d.ts +0 -3
- 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/bitgo/utils/blsUtils.d.ts +0 -52
- package/dist/src/bitgo/utils/blsUtils.d.ts.map +0 -1
- package/dist/src/bitgo/utils/blsUtils.js +0 -237
- package/dist/src/bitgo/utils/iBlsUtils.d.ts +0 -14
- package/dist/src/bitgo/utils/iBlsUtils.d.ts.map +0 -1
- package/dist/src/bitgo/utils/iBlsUtils.js +0 -3
- package/dist/src/openssl/index.d.ts +0 -5
- package/dist/src/openssl/index.d.ts.map +0 -1
- package/dist/src/openssl/index.js +0 -9
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
export interface ITradingNetwork {
|
|
2
|
+
getBalances: (params?: GetNetworkBalancesParams) => Promise<GetNetworkBalancesResponse>;
|
|
3
|
+
getPartners: (params?: GetNetworkPartnersParams) => Promise<GetNetworkPartnersResponse>;
|
|
4
|
+
getSupportedCurrencies: (params: GetNetworkSupportedCurrenciesParams) => Promise<GetNetworkSupportedCurrenciesResponse>;
|
|
5
|
+
getConnections: (params?: GetNetworkConnectionsParams) => Promise<GetNetworkConnectionsResponse>;
|
|
6
|
+
getConnectionById: (params: GetNetworkConnectionByIdParams) => Promise<GetNetworkConnectionByIdResponse>;
|
|
7
|
+
createConnection: (params: CreateNetworkConnectionParams) => Promise<CreateNetworkConnectionResponse>;
|
|
8
|
+
updateConnection: (params: UpdateNetworkConnectionParams) => Promise<UpdateNetworkConnectionResponse>;
|
|
9
|
+
getAllocations: (params?: GetNetworkAllocationsParams) => Promise<GetNetworkAllocationsResponse>;
|
|
10
|
+
getAllocationById: (params: GetNetworkAllocationByIdParams) => Promise<GetNetworkAllocationByIdResponse>;
|
|
11
|
+
createAllocation: (params: CreateNetworkAllocationParams) => Promise<CreateNetworkAllocationResponse>;
|
|
12
|
+
createDeallocation: (params: CreateNetworkDeallocationParams) => Promise<CreateNetworkDeallocationResponse>;
|
|
13
|
+
getSettlements: (params?: GetNetworkSettlementsParams) => Promise<GetNetworkSettlementsResponse>;
|
|
14
|
+
getSettlementById: (params: GetNetworkSettlementByIdParams) => Promise<GetNetworkSettlementByIdResponse>;
|
|
15
|
+
getSettlementTransfers: (params?: GetNetworkSettlementTransfersParams) => Promise<GetNetworkSettlementTransfersResponse>;
|
|
16
|
+
}
|
|
17
|
+
export type GetNetworkBalancesParams = NetworkPaginationParams & {
|
|
18
|
+
connectionIds?: string[];
|
|
19
|
+
partnerIds?: string[];
|
|
20
|
+
};
|
|
21
|
+
export type GetNetworkBalancesResponse = {
|
|
22
|
+
clientId: string;
|
|
23
|
+
balances: Record<string, NetworkAccountBalanceRecord>;
|
|
24
|
+
networkBalances: Record<string, NetworkBalance>;
|
|
25
|
+
};
|
|
26
|
+
export type GetNetworkPartnersParams = NetworkPaginationParams & {
|
|
27
|
+
ids?: string[];
|
|
28
|
+
names?: string[];
|
|
29
|
+
institutionIds?: string[];
|
|
30
|
+
institutionIdentifiers?: string[];
|
|
31
|
+
active?: boolean;
|
|
32
|
+
};
|
|
33
|
+
export type GetNetworkPartnersResponse = {
|
|
34
|
+
partners: NetworkPartner[];
|
|
35
|
+
};
|
|
36
|
+
export type GetNetworkSupportedCurrenciesParams = {
|
|
37
|
+
partnerIds: string[];
|
|
38
|
+
};
|
|
39
|
+
export type GetNetworkSupportedCurrenciesResponse = {
|
|
40
|
+
supportedCurrencies: Record<string, V1SupportedCurrency[]>;
|
|
41
|
+
domain: string;
|
|
42
|
+
};
|
|
43
|
+
/** Connections */
|
|
44
|
+
export type GetNetworkConnectionsParams = NetworkPaginationParams & {
|
|
45
|
+
active?: string;
|
|
46
|
+
connectionIds?: string;
|
|
47
|
+
partnerIds?: string;
|
|
48
|
+
names?: string;
|
|
49
|
+
};
|
|
50
|
+
export type GetNetworkConnectionsResponse = {
|
|
51
|
+
connections: NetworkConnection[];
|
|
52
|
+
};
|
|
53
|
+
export type GetNetworkConnectionByIdParams = {
|
|
54
|
+
connectionId: string;
|
|
55
|
+
};
|
|
56
|
+
export type GetNetworkConnectionByIdResponse = {
|
|
57
|
+
connection: NetworkConnection;
|
|
58
|
+
};
|
|
59
|
+
export type CreateNetworkConnectionParams = {
|
|
60
|
+
partnerId: string;
|
|
61
|
+
name: string;
|
|
62
|
+
connectionKey: NetworkConnectionKey;
|
|
63
|
+
nonce: string;
|
|
64
|
+
payload: string;
|
|
65
|
+
signature: string;
|
|
66
|
+
};
|
|
67
|
+
export type CreateNetworkConnectionResponse = {
|
|
68
|
+
connection: NetworkConnection;
|
|
69
|
+
};
|
|
70
|
+
export type UpdateNetworkConnectionParams = {
|
|
71
|
+
connectionId: string;
|
|
72
|
+
name?: string;
|
|
73
|
+
active?: boolean;
|
|
74
|
+
};
|
|
75
|
+
export type UpdateNetworkConnectionResponse = {
|
|
76
|
+
connection: NetworkConnection;
|
|
77
|
+
};
|
|
78
|
+
/** Allocations */
|
|
79
|
+
export type GetNetworkAllocationsParams = NetworkPaginationParams & {
|
|
80
|
+
sortField?: 'id' | 'updatedAt' | 'quantity' | 'currency';
|
|
81
|
+
sortDirection?: NetworkSortDirection;
|
|
82
|
+
allocationIds?: string[];
|
|
83
|
+
types?: NetworkAllocationType[];
|
|
84
|
+
statuses?: NetworkAllocationStatus[];
|
|
85
|
+
currencies?: string[];
|
|
86
|
+
connectionIds?: string[];
|
|
87
|
+
partnerIds?: string[];
|
|
88
|
+
};
|
|
89
|
+
export type GetNetworkAllocationsResponse = {
|
|
90
|
+
allocations: NetworkAllocation[];
|
|
91
|
+
};
|
|
92
|
+
export type GetNetworkAllocationByIdParams = {
|
|
93
|
+
allocationId: string;
|
|
94
|
+
};
|
|
95
|
+
export type GetNetworkAllocationByIdResponse = {
|
|
96
|
+
allocation: NetworkAllocation;
|
|
97
|
+
};
|
|
98
|
+
export type PrepareNetworkAllocationParams = Omit<CreateNetworkAllocationParams, 'payload' | 'signature'> & {
|
|
99
|
+
walletPassphrase: string;
|
|
100
|
+
clientExternalId?: string;
|
|
101
|
+
nonce?: string;
|
|
102
|
+
};
|
|
103
|
+
export type CreateNetworkAllocationParams = {
|
|
104
|
+
connectionId: string;
|
|
105
|
+
payload: string;
|
|
106
|
+
signature: string;
|
|
107
|
+
amount: NetworkAllocationAmount;
|
|
108
|
+
clientExternalId: string;
|
|
109
|
+
nonce: string;
|
|
110
|
+
notes?: string;
|
|
111
|
+
};
|
|
112
|
+
export type CreateNetworkAllocationResponse = {
|
|
113
|
+
allocation: NetworkAllocation;
|
|
114
|
+
};
|
|
115
|
+
/** Deallocations */
|
|
116
|
+
export type CreateNetworkDeallocationParams = {
|
|
117
|
+
connectionId: string;
|
|
118
|
+
payload: string;
|
|
119
|
+
signature: string;
|
|
120
|
+
amount: NetworkAllocationAmount;
|
|
121
|
+
clientExternalId: string;
|
|
122
|
+
nonce: string;
|
|
123
|
+
notes?: string;
|
|
124
|
+
};
|
|
125
|
+
export type CreateNetworkDeallocationResponse = {
|
|
126
|
+
allocation: NetworkAllocation;
|
|
127
|
+
};
|
|
128
|
+
export type GetNetworkSettlementsParams = NetworkPaginationParams & {
|
|
129
|
+
settlementIds?: string[];
|
|
130
|
+
partnerIds?: string[];
|
|
131
|
+
partyConnectionIds?: string[];
|
|
132
|
+
counterpartyConnectionIds?: string[];
|
|
133
|
+
};
|
|
134
|
+
export type GetNetworkSettlementsResponse = {
|
|
135
|
+
settlements: NetworkSettlement[];
|
|
136
|
+
};
|
|
137
|
+
export type GetNetworkSettlementByIdParams = NetworkPaginationParams & {
|
|
138
|
+
settlementId: string;
|
|
139
|
+
currencies?: string[];
|
|
140
|
+
};
|
|
141
|
+
export type GetNetworkSettlementByIdResponse = {
|
|
142
|
+
settlement: NetworkSettlement;
|
|
143
|
+
settlementTransfers: NetworkSettlementTransfer[];
|
|
144
|
+
};
|
|
145
|
+
export type GetNetworkSettlementTransfersParams = NetworkPaginationParams & {
|
|
146
|
+
currencies?: string[];
|
|
147
|
+
initiatedBy?: string[];
|
|
148
|
+
partnerIds?: string[];
|
|
149
|
+
settlementIds?: string[];
|
|
150
|
+
settlementStatuses?: NetworkSettlementStatus[];
|
|
151
|
+
settlementUpdatedBefore?: string;
|
|
152
|
+
settlementUpdatedOnOrAfter?: string;
|
|
153
|
+
};
|
|
154
|
+
export type GetNetworkSettlementTransfersResponse = {
|
|
155
|
+
settlementTransfers: NetworkSettlementTransfer[];
|
|
156
|
+
};
|
|
157
|
+
type NetworkPaginationParams = {
|
|
158
|
+
pageNumber?: string | number;
|
|
159
|
+
pageSize?: string | number;
|
|
160
|
+
};
|
|
161
|
+
type NetworkSortDirection = 'ASC' | 'DESC';
|
|
162
|
+
export type NetworkAccountBalanceRecord = {
|
|
163
|
+
available: string;
|
|
164
|
+
held: string;
|
|
165
|
+
};
|
|
166
|
+
export type NetworkBalance = {
|
|
167
|
+
balances: Record<string, NetworkAccountBalanceRecord>;
|
|
168
|
+
name: string;
|
|
169
|
+
partnerId: string;
|
|
170
|
+
partnerInstitutionIdentifier: string;
|
|
171
|
+
partnersConnectionId: string;
|
|
172
|
+
};
|
|
173
|
+
export type V1SupportedCurrency = {
|
|
174
|
+
ofcCurrency: string;
|
|
175
|
+
backingCurrency: string;
|
|
176
|
+
partnerNames: string[];
|
|
177
|
+
};
|
|
178
|
+
export type NetworkConnection = {
|
|
179
|
+
active: boolean;
|
|
180
|
+
clientId: string;
|
|
181
|
+
initialized: boolean;
|
|
182
|
+
name: string;
|
|
183
|
+
partnersConnectionId: string;
|
|
184
|
+
partnersClientId: string;
|
|
185
|
+
partnerId: string;
|
|
186
|
+
networkAccountId: string;
|
|
187
|
+
proof: string;
|
|
188
|
+
nonce: string;
|
|
189
|
+
id: string;
|
|
190
|
+
createdAt: string;
|
|
191
|
+
updatedAt: string;
|
|
192
|
+
};
|
|
193
|
+
export type NetworkConnectionKey = NetworkConnectionKeyToken | NetworkConnectionKeyTokenAndSignature | NetworkConnectionKeyApiKeyAndSecret | NetworkConnectionKeyClearloop;
|
|
194
|
+
export type NetworkConnectionKeyToken = {
|
|
195
|
+
schema: 'token';
|
|
196
|
+
connectionToken: string;
|
|
197
|
+
};
|
|
198
|
+
export type NetworkConnectionKeyTokenAndSignature = {
|
|
199
|
+
schema: 'tokenAndSignature';
|
|
200
|
+
connectionToken: string;
|
|
201
|
+
signature: string;
|
|
202
|
+
};
|
|
203
|
+
export type NetworkConnectionKeyApiKeyAndSecret = {
|
|
204
|
+
schema: 'apiKeyAndSecret';
|
|
205
|
+
apiKey: string;
|
|
206
|
+
apiSecret: string;
|
|
207
|
+
};
|
|
208
|
+
export type NetworkConnectionKeyClearloop = Omit<NetworkConnectionKeyApiKeyAndSecret, 'schema'> & {
|
|
209
|
+
schema: 'clearloop';
|
|
210
|
+
clientAccountId: string;
|
|
211
|
+
companyRegistrationNumber: string;
|
|
212
|
+
};
|
|
213
|
+
export type NetworkAllocationType = 'allocation' | 'deallocation';
|
|
214
|
+
export type NetworkAllocationStatus = 'cleared' | 'released' | 'reserved';
|
|
215
|
+
export type NetworkAllocation = {
|
|
216
|
+
reason: string;
|
|
217
|
+
status: NetworkAllocationStatus;
|
|
218
|
+
type: NetworkAllocationType;
|
|
219
|
+
id: string;
|
|
220
|
+
amount: NetworkAllocationAmount;
|
|
221
|
+
connectionId: string;
|
|
222
|
+
clientExternalId: string;
|
|
223
|
+
partnerExternalId?: string;
|
|
224
|
+
initiatedBy: string;
|
|
225
|
+
notes?: string;
|
|
226
|
+
createdAt: string;
|
|
227
|
+
updatedAt: string;
|
|
228
|
+
};
|
|
229
|
+
export type NetworkAllocationAmount = {
|
|
230
|
+
currency: string;
|
|
231
|
+
quantity?: string;
|
|
232
|
+
};
|
|
233
|
+
export type NetworkDeallocation = NetworkAllocation;
|
|
234
|
+
export type NetworkSettlement = {
|
|
235
|
+
status: NetworkSettlementStatus;
|
|
236
|
+
reason?: string;
|
|
237
|
+
id: string;
|
|
238
|
+
partnerId: string;
|
|
239
|
+
externalId: string;
|
|
240
|
+
reconciled: boolean;
|
|
241
|
+
initiatedBy: string;
|
|
242
|
+
notes?: string;
|
|
243
|
+
createdAt: string;
|
|
244
|
+
updatedAt: string;
|
|
245
|
+
};
|
|
246
|
+
export type NetworkSettlementTransfer = {
|
|
247
|
+
id: string;
|
|
248
|
+
currency: string;
|
|
249
|
+
settlementId: string;
|
|
250
|
+
quantity: string;
|
|
251
|
+
txIds: string[];
|
|
252
|
+
settlementStatus: NetworkSettlementStatus;
|
|
253
|
+
settlementNotes?: string;
|
|
254
|
+
sourceTradingAccountId?: string;
|
|
255
|
+
sourceClientName?: string;
|
|
256
|
+
destinationTradingAccountId?: string;
|
|
257
|
+
destinationClientName?: string;
|
|
258
|
+
sourceNetworkAccountId?: string;
|
|
259
|
+
sourceConnectionName?: string;
|
|
260
|
+
destinationNetworkAccountId?: string;
|
|
261
|
+
destinationConnectionName?: string;
|
|
262
|
+
createdAt: string;
|
|
263
|
+
updatedAt: string;
|
|
264
|
+
};
|
|
265
|
+
export type NetworkSettlementStatus = 'failed' | 'completed' | 'pending';
|
|
266
|
+
export type ConnectionKeySchema = 'token' | 'tokenAndSignature' | 'apiKeyAndSecret' | 'clearloop';
|
|
267
|
+
export type NetworkPartner = {
|
|
268
|
+
id: string;
|
|
269
|
+
name: string;
|
|
270
|
+
institutionId: string;
|
|
271
|
+
institutionIdentifier: string;
|
|
272
|
+
connectionKeySchema: ConnectionKeySchema;
|
|
273
|
+
active: boolean;
|
|
274
|
+
publicKey?: string;
|
|
275
|
+
};
|
|
276
|
+
export {};
|
|
277
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/bitgo/trading/network/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYml0Z28vdHJhZGluZy9uZXR3b3JrL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIElUcmFkaW5nTmV0d29yayB7XG4gIGdldEJhbGFuY2VzOiAocGFyYW1zPzogR2V0TmV0d29ya0JhbGFuY2VzUGFyYW1zKSA9PiBQcm9taXNlPEdldE5ldHdvcmtCYWxhbmNlc1Jlc3BvbnNlPjtcbiAgZ2V0UGFydG5lcnM6IChwYXJhbXM/OiBHZXROZXR3b3JrUGFydG5lcnNQYXJhbXMpID0+IFByb21pc2U8R2V0TmV0d29ya1BhcnRuZXJzUmVzcG9uc2U+O1xuICBnZXRTdXBwb3J0ZWRDdXJyZW5jaWVzOiAoXG4gICAgcGFyYW1zOiBHZXROZXR3b3JrU3VwcG9ydGVkQ3VycmVuY2llc1BhcmFtc1xuICApID0+IFByb21pc2U8R2V0TmV0d29ya1N1cHBvcnRlZEN1cnJlbmNpZXNSZXNwb25zZT47XG4gIGdldENvbm5lY3Rpb25zOiAocGFyYW1zPzogR2V0TmV0d29ya0Nvbm5lY3Rpb25zUGFyYW1zKSA9PiBQcm9taXNlPEdldE5ldHdvcmtDb25uZWN0aW9uc1Jlc3BvbnNlPjtcbiAgZ2V0Q29ubmVjdGlvbkJ5SWQ6IChwYXJhbXM6IEdldE5ldHdvcmtDb25uZWN0aW9uQnlJZFBhcmFtcykgPT4gUHJvbWlzZTxHZXROZXR3b3JrQ29ubmVjdGlvbkJ5SWRSZXNwb25zZT47XG4gIGNyZWF0ZUNvbm5lY3Rpb246IChwYXJhbXM6IENyZWF0ZU5ldHdvcmtDb25uZWN0aW9uUGFyYW1zKSA9PiBQcm9taXNlPENyZWF0ZU5ldHdvcmtDb25uZWN0aW9uUmVzcG9uc2U+O1xuICB1cGRhdGVDb25uZWN0aW9uOiAocGFyYW1zOiBVcGRhdGVOZXR3b3JrQ29ubmVjdGlvblBhcmFtcykgPT4gUHJvbWlzZTxVcGRhdGVOZXR3b3JrQ29ubmVjdGlvblJlc3BvbnNlPjtcbiAgZ2V0QWxsb2NhdGlvbnM6IChwYXJhbXM/OiBHZXROZXR3b3JrQWxsb2NhdGlvbnNQYXJhbXMpID0+IFByb21pc2U8R2V0TmV0d29ya0FsbG9jYXRpb25zUmVzcG9uc2U+O1xuICBnZXRBbGxvY2F0aW9uQnlJZDogKHBhcmFtczogR2V0TmV0d29ya0FsbG9jYXRpb25CeUlkUGFyYW1zKSA9PiBQcm9taXNlPEdldE5ldHdvcmtBbGxvY2F0aW9uQnlJZFJlc3BvbnNlPjtcbiAgY3JlYXRlQWxsb2NhdGlvbjogKHBhcmFtczogQ3JlYXRlTmV0d29ya0FsbG9jYXRpb25QYXJhbXMpID0+IFByb21pc2U8Q3JlYXRlTmV0d29ya0FsbG9jYXRpb25SZXNwb25zZT47XG4gIGNyZWF0ZURlYWxsb2NhdGlvbjogKHBhcmFtczogQ3JlYXRlTmV0d29ya0RlYWxsb2NhdGlvblBhcmFtcykgPT4gUHJvbWlzZTxDcmVhdGVOZXR3b3JrRGVhbGxvY2F0aW9uUmVzcG9uc2U+O1xuICBnZXRTZXR0bGVtZW50czogKHBhcmFtcz86IEdldE5ldHdvcmtTZXR0bGVtZW50c1BhcmFtcykgPT4gUHJvbWlzZTxHZXROZXR3b3JrU2V0dGxlbWVudHNSZXNwb25zZT47XG4gIGdldFNldHRsZW1lbnRCeUlkOiAocGFyYW1zOiBHZXROZXR3b3JrU2V0dGxlbWVudEJ5SWRQYXJhbXMpID0+IFByb21pc2U8R2V0TmV0d29ya1NldHRsZW1lbnRCeUlkUmVzcG9uc2U+O1xuICBnZXRTZXR0bGVtZW50VHJhbnNmZXJzOiAoXG4gICAgcGFyYW1zPzogR2V0TmV0d29ya1NldHRsZW1lbnRUcmFuc2ZlcnNQYXJhbXNcbiAgKSA9PiBQcm9taXNlPEdldE5ldHdvcmtTZXR0bGVtZW50VHJhbnNmZXJzUmVzcG9uc2U+O1xufVxuXG4vLyBNRVRIT0QgVFlQRVNcblxuZXhwb3J0IHR5cGUgR2V0TmV0d29ya0JhbGFuY2VzUGFyYW1zID0gTmV0d29ya1BhZ2luYXRpb25QYXJhbXMgJiB7XG4gIGNvbm5lY3Rpb25JZHM/OiBzdHJpbmdbXTtcbiAgcGFydG5lcklkcz86IHN0cmluZ1tdO1xufTtcblxuZXhwb3J0IHR5cGUgR2V0TmV0d29ya0JhbGFuY2VzUmVzcG9uc2UgPSB7XG4gIGNsaWVudElkOiBzdHJpbmc7XG4gIC8vIG9mYyBjb2luXG4gIGJhbGFuY2VzOiBSZWNvcmQ8c3RyaW5nLCBOZXR3b3JrQWNjb3VudEJhbGFuY2VSZWNvcmQ+O1xuICAvLyBjb25uZWN0aW9uSWRcbiAgbmV0d29ya0JhbGFuY2VzOiBSZWNvcmQ8c3RyaW5nLCBOZXR3b3JrQmFsYW5jZT47XG59O1xuXG5leHBvcnQgdHlwZSBHZXROZXR3b3JrUGFydG5lcnNQYXJhbXMgPSBOZXR3b3JrUGFnaW5hdGlvblBhcmFtcyAmIHtcbiAgaWRzPzogc3RyaW5nW107XG4gIG5hbWVzPzogc3RyaW5nW107XG4gIGluc3RpdHV0aW9uSWRzPzogc3RyaW5nW107XG4gIGluc3RpdHV0aW9uSWRlbnRpZmllcnM/OiBzdHJpbmdbXTtcbiAgYWN0aXZlPzogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCB0eXBlIEdldE5ldHdvcmtQYXJ0bmVyc1Jlc3BvbnNlID0ge1xuICBwYXJ0bmVyczogTmV0d29ya1BhcnRuZXJbXTtcbn07XG5cbmV4cG9ydCB0eXBlIEdldE5ldHdvcmtTdXBwb3J0ZWRDdXJyZW5jaWVzUGFyYW1zID0ge1xuICBwYXJ0bmVySWRzOiBzdHJpbmdbXTtcbn07XG5cbmV4cG9ydCB0eXBlIEdldE5ldHdvcmtTdXBwb3J0ZWRDdXJyZW5jaWVzUmVzcG9uc2UgPSB7XG4gIHN1cHBvcnRlZEN1cnJlbmNpZXM6IFJlY29yZDxzdHJpbmcsIFYxU3VwcG9ydGVkQ3VycmVuY3lbXT47XG4gIGRvbWFpbjogc3RyaW5nO1xufTtcblxuLyoqIENvbm5lY3Rpb25zICovXG5cbmV4cG9ydCB0eXBlIEdldE5ldHdvcmtDb25uZWN0aW9uc1BhcmFtcyA9IE5ldHdvcmtQYWdpbmF0aW9uUGFyYW1zICYge1xuICBhY3RpdmU/OiBzdHJpbmc7XG4gIGNvbm5lY3Rpb25JZHM/OiBzdHJpbmc7XG4gIHBhcnRuZXJJZHM/OiBzdHJpbmc7XG4gIG5hbWVzPzogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgR2V0TmV0d29ya0Nvbm5lY3Rpb25zUmVzcG9uc2UgPSB7XG4gIGNvbm5lY3Rpb25zOiBOZXR3b3JrQ29ubmVjdGlvbltdO1xufTtcblxuZXhwb3J0IHR5cGUgR2V0TmV0d29ya0Nvbm5lY3Rpb25CeUlkUGFyYW1zID0ge1xuICBjb25uZWN0aW9uSWQ6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIEdldE5ldHdvcmtDb25uZWN0aW9uQnlJZFJlc3BvbnNlID0ge1xuICBjb25uZWN0aW9uOiBOZXR3b3JrQ29ubmVjdGlvbjtcbn07XG5cbmV4cG9ydCB0eXBlIENyZWF0ZU5ldHdvcmtDb25uZWN0aW9uUGFyYW1zID0ge1xuICBwYXJ0bmVySWQ6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBjb25uZWN0aW9uS2V5OiBOZXR3b3JrQ29ubmVjdGlvbktleTtcbiAgbm9uY2U6IHN0cmluZztcbiAgcGF5bG9hZDogc3RyaW5nO1xuICBzaWduYXR1cmU6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIENyZWF0ZU5ldHdvcmtDb25uZWN0aW9uUmVzcG9uc2UgPSB7XG4gIGNvbm5lY3Rpb246IE5ldHdvcmtDb25uZWN0aW9uO1xufTtcblxuZXhwb3J0IHR5cGUgVXBkYXRlTmV0d29ya0Nvbm5lY3Rpb25QYXJhbXMgPSB7XG4gIGNvbm5lY3Rpb25JZDogc3RyaW5nO1xuICBuYW1lPzogc3RyaW5nO1xuICBhY3RpdmU/OiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgVXBkYXRlTmV0d29ya0Nvbm5lY3Rpb25SZXNwb25zZSA9IHtcbiAgY29ubmVjdGlvbjogTmV0d29ya0Nvbm5lY3Rpb247XG59O1xuXG4vKiogQWxsb2NhdGlvbnMgKi9cblxuZXhwb3J0IHR5cGUgR2V0TmV0d29ya0FsbG9jYXRpb25zUGFyYW1zID0gTmV0d29ya1BhZ2luYXRpb25QYXJhbXMgJiB7XG4gIHNvcnRGaWVsZD86ICdpZCcgfCAndXBkYXRlZEF0JyB8ICdxdWFudGl0eScgfCAnY3VycmVuY3knO1xuICBzb3J0RGlyZWN0aW9uPzogTmV0d29ya1NvcnREaXJlY3Rpb247XG4gIGFsbG9jYXRpb25JZHM/OiBzdHJpbmdbXTtcbiAgdHlwZXM/OiBOZXR3b3JrQWxsb2NhdGlvblR5cGVbXTtcbiAgc3RhdHVzZXM/OiBOZXR3b3JrQWxsb2NhdGlvblN0YXR1c1tdO1xuICBjdXJyZW5jaWVzPzogc3RyaW5nW107XG4gIGNvbm5lY3Rpb25JZHM/OiBzdHJpbmdbXTtcbiAgcGFydG5lcklkcz86IHN0cmluZ1tdO1xufTtcblxuZXhwb3J0IHR5cGUgR2V0TmV0d29ya0FsbG9jYXRpb25zUmVzcG9uc2UgPSB7XG4gIGFsbG9jYXRpb25zOiBOZXR3b3JrQWxsb2NhdGlvbltdO1xufTtcblxuZXhwb3J0IHR5cGUgR2V0TmV0d29ya0FsbG9jYXRpb25CeUlkUGFyYW1zID0ge1xuICBhbGxvY2F0aW9uSWQ6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIEdldE5ldHdvcmtBbGxvY2F0aW9uQnlJZFJlc3BvbnNlID0ge1xuICBhbGxvY2F0aW9uOiBOZXR3b3JrQWxsb2NhdGlvbjtcbn07XG5cbmV4cG9ydCB0eXBlIFByZXBhcmVOZXR3b3JrQWxsb2NhdGlvblBhcmFtcyA9IE9taXQ8Q3JlYXRlTmV0d29ya0FsbG9jYXRpb25QYXJhbXMsICdwYXlsb2FkJyB8ICdzaWduYXR1cmUnPiAmIHtcbiAgd2FsbGV0UGFzc3BocmFzZTogc3RyaW5nO1xuICBjbGllbnRFeHRlcm5hbElkPzogc3RyaW5nO1xuICBub25jZT86IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIENyZWF0ZU5ldHdvcmtBbGxvY2F0aW9uUGFyYW1zID0ge1xuICBjb25uZWN0aW9uSWQ6IHN0cmluZztcbiAgcGF5bG9hZDogc3RyaW5nO1xuICBzaWduYXR1cmU6IHN0cmluZztcbiAgYW1vdW50OiBOZXR3b3JrQWxsb2NhdGlvbkFtb3VudDtcbiAgY2xpZW50RXh0ZXJuYWxJZDogc3RyaW5nO1xuICBub25jZTogc3RyaW5nO1xuICBub3Rlcz86IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIENyZWF0ZU5ldHdvcmtBbGxvY2F0aW9uUmVzcG9uc2UgPSB7XG4gIGFsbG9jYXRpb246IE5ldHdvcmtBbGxvY2F0aW9uO1xufTtcblxuLyoqIERlYWxsb2NhdGlvbnMgKi9cblxuZXhwb3J0IHR5cGUgQ3JlYXRlTmV0d29ya0RlYWxsb2NhdGlvblBhcmFtcyA9IHtcbiAgY29ubmVjdGlvbklkOiBzdHJpbmc7XG4gIHBheWxvYWQ6IHN0cmluZztcbiAgc2lnbmF0dXJlOiBzdHJpbmc7XG4gIGFtb3VudDogTmV0d29ya0FsbG9jYXRpb25BbW91bnQ7XG4gIGNsaWVudEV4dGVybmFsSWQ6IHN0cmluZztcbiAgbm9uY2U6IHN0cmluZztcbiAgbm90ZXM/OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBDcmVhdGVOZXR3b3JrRGVhbGxvY2F0aW9uUmVzcG9uc2UgPSB7XG4gIGFsbG9jYXRpb246IE5ldHdvcmtBbGxvY2F0aW9uO1xufTtcblxuZXhwb3J0IHR5cGUgR2V0TmV0d29ya1NldHRsZW1lbnRzUGFyYW1zID0gTmV0d29ya1BhZ2luYXRpb25QYXJhbXMgJiB7XG4gIHNldHRsZW1lbnRJZHM/OiBzdHJpbmdbXTtcbiAgcGFydG5lcklkcz86IHN0cmluZ1tdO1xuICBwYXJ0eUNvbm5lY3Rpb25JZHM/OiBzdHJpbmdbXTtcbiAgY291bnRlcnBhcnR5Q29ubmVjdGlvbklkcz86IHN0cmluZ1tdO1xufTtcblxuZXhwb3J0IHR5cGUgR2V0TmV0d29ya1NldHRsZW1lbnRzUmVzcG9uc2UgPSB7XG4gIHNldHRsZW1lbnRzOiBOZXR3b3JrU2V0dGxlbWVudFtdO1xufTtcblxuZXhwb3J0IHR5cGUgR2V0TmV0d29ya1NldHRsZW1lbnRCeUlkUGFyYW1zID0gTmV0d29ya1BhZ2luYXRpb25QYXJhbXMgJiB7XG4gIHNldHRsZW1lbnRJZDogc3RyaW5nO1xuICBjdXJyZW5jaWVzPzogc3RyaW5nW107XG59O1xuXG5leHBvcnQgdHlwZSBHZXROZXR3b3JrU2V0dGxlbWVudEJ5SWRSZXNwb25zZSA9IHtcbiAgc2V0dGxlbWVudDogTmV0d29ya1NldHRsZW1lbnQ7XG4gIHNldHRsZW1lbnRUcmFuc2ZlcnM6IE5ldHdvcmtTZXR0bGVtZW50VHJhbnNmZXJbXTtcbn07XG5cbmV4cG9ydCB0eXBlIEdldE5ldHdvcmtTZXR0bGVtZW50VHJhbnNmZXJzUGFyYW1zID0gTmV0d29ya1BhZ2luYXRpb25QYXJhbXMgJiB7XG4gIGN1cnJlbmNpZXM/OiBzdHJpbmdbXTtcbiAgaW5pdGlhdGVkQnk/OiBzdHJpbmdbXTtcbiAgcGFydG5lcklkcz86IHN0cmluZ1tdO1xuICBzZXR0bGVtZW50SWRzPzogc3RyaW5nW107XG4gIHNldHRsZW1lbnRTdGF0dXNlcz86IE5ldHdvcmtTZXR0bGVtZW50U3RhdHVzW107XG4gIHNldHRsZW1lbnRVcGRhdGVkQmVmb3JlPzogc3RyaW5nO1xuICBzZXR0bGVtZW50VXBkYXRlZE9uT3JBZnRlcj86IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIEdldE5ldHdvcmtTZXR0bGVtZW50VHJhbnNmZXJzUmVzcG9uc2UgPSB7XG4gIHNldHRsZW1lbnRUcmFuc2ZlcnM6IE5ldHdvcmtTZXR0bGVtZW50VHJhbnNmZXJbXTtcbn07XG5cbi8vIE1FVEhPRCBBUlRJRkFDVFNcblxudHlwZSBOZXR3b3JrUGFnaW5hdGlvblBhcmFtcyA9IHtcbiAgcGFnZU51bWJlcj86IHN0cmluZyB8IG51bWJlcjtcbiAgcGFnZVNpemU/OiBzdHJpbmcgfCBudW1iZXI7XG59O1xuXG50eXBlIE5ldHdvcmtTb3J0RGlyZWN0aW9uID0gJ0FTQycgfCAnREVTQyc7XG5cbmV4cG9ydCB0eXBlIE5ldHdvcmtBY2NvdW50QmFsYW5jZVJlY29yZCA9IHtcbiAgYXZhaWxhYmxlOiBzdHJpbmc7XG4gIGhlbGQ6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIE5ldHdvcmtCYWxhbmNlID0ge1xuICBiYWxhbmNlczogUmVjb3JkPHN0cmluZywgTmV0d29ya0FjY291bnRCYWxhbmNlUmVjb3JkPjtcbiAgbmFtZTogc3RyaW5nO1xuICBwYXJ0bmVySWQ6IHN0cmluZztcbiAgcGFydG5lckluc3RpdHV0aW9uSWRlbnRpZmllcjogc3RyaW5nO1xuICBwYXJ0bmVyc0Nvbm5lY3Rpb25JZDogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgVjFTdXBwb3J0ZWRDdXJyZW5jeSA9IHtcbiAgb2ZjQ3VycmVuY3k6IHN0cmluZztcbiAgYmFja2luZ0N1cnJlbmN5OiBzdHJpbmc7XG4gIHBhcnRuZXJOYW1lczogc3RyaW5nW107XG59O1xuXG5leHBvcnQgdHlwZSBOZXR3b3JrQ29ubmVjdGlvbiA9IHtcbiAgYWN0aXZlOiBib29sZWFuO1xuICBjbGllbnRJZDogc3RyaW5nO1xuICBpbml0aWFsaXplZDogYm9vbGVhbjtcbiAgbmFtZTogc3RyaW5nO1xuICBwYXJ0bmVyc0Nvbm5lY3Rpb25JZDogc3RyaW5nO1xuICBwYXJ0bmVyc0NsaWVudElkOiBzdHJpbmc7XG4gIHBhcnRuZXJJZDogc3RyaW5nO1xuICBuZXR3b3JrQWNjb3VudElkOiBzdHJpbmc7XG4gIHByb29mOiBzdHJpbmc7XG4gIG5vbmNlOiBzdHJpbmc7XG4gIGlkOiBzdHJpbmc7XG4gIGNyZWF0ZWRBdDogc3RyaW5nO1xuICB1cGRhdGVkQXQ6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIE5ldHdvcmtDb25uZWN0aW9uS2V5ID1cbiAgfCBOZXR3b3JrQ29ubmVjdGlvbktleVRva2VuXG4gIHwgTmV0d29ya0Nvbm5lY3Rpb25LZXlUb2tlbkFuZFNpZ25hdHVyZVxuICB8IE5ldHdvcmtDb25uZWN0aW9uS2V5QXBpS2V5QW5kU2VjcmV0XG4gIHwgTmV0d29ya0Nvbm5lY3Rpb25LZXlDbGVhcmxvb3A7XG5cbmV4cG9ydCB0eXBlIE5ldHdvcmtDb25uZWN0aW9uS2V5VG9rZW4gPSB7XG4gIHNjaGVtYTogJ3Rva2VuJztcbiAgY29ubmVjdGlvblRva2VuOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBOZXR3b3JrQ29ubmVjdGlvbktleVRva2VuQW5kU2lnbmF0dXJlID0ge1xuICBzY2hlbWE6ICd0b2tlbkFuZFNpZ25hdHVyZSc7XG4gIGNvbm5lY3Rpb25Ub2tlbjogc3RyaW5nO1xuICBzaWduYXR1cmU6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIE5ldHdvcmtDb25uZWN0aW9uS2V5QXBpS2V5QW5kU2VjcmV0ID0ge1xuICBzY2hlbWE6ICdhcGlLZXlBbmRTZWNyZXQnO1xuICBhcGlLZXk6IHN0cmluZztcbiAgYXBpU2VjcmV0OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBOZXR3b3JrQ29ubmVjdGlvbktleUNsZWFybG9vcCA9IE9taXQ8TmV0d29ya0Nvbm5lY3Rpb25LZXlBcGlLZXlBbmRTZWNyZXQsICdzY2hlbWEnPiAmIHtcbiAgc2NoZW1hOiAnY2xlYXJsb29wJztcbiAgY2xpZW50QWNjb3VudElkOiBzdHJpbmc7XG4gIGNvbXBhbnlSZWdpc3RyYXRpb25OdW1iZXI6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIE5ldHdvcmtBbGxvY2F0aW9uVHlwZSA9ICdhbGxvY2F0aW9uJyB8ICdkZWFsbG9jYXRpb24nO1xuZXhwb3J0IHR5cGUgTmV0d29ya0FsbG9jYXRpb25TdGF0dXMgPSAnY2xlYXJlZCcgfCAncmVsZWFzZWQnIHwgJ3Jlc2VydmVkJztcblxuZXhwb3J0IHR5cGUgTmV0d29ya0FsbG9jYXRpb24gPSB7XG4gIHJlYXNvbjogc3RyaW5nO1xuICBzdGF0dXM6IE5ldHdvcmtBbGxvY2F0aW9uU3RhdHVzO1xuICB0eXBlOiBOZXR3b3JrQWxsb2NhdGlvblR5cGU7XG4gIGlkOiBzdHJpbmc7XG4gIGFtb3VudDogTmV0d29ya0FsbG9jYXRpb25BbW91bnQ7XG4gIGNvbm5lY3Rpb25JZDogc3RyaW5nO1xuICBjbGllbnRFeHRlcm5hbElkOiBzdHJpbmc7XG4gIHBhcnRuZXJFeHRlcm5hbElkPzogc3RyaW5nO1xuICBpbml0aWF0ZWRCeTogc3RyaW5nO1xuICBub3Rlcz86IHN0cmluZztcbiAgY3JlYXRlZEF0OiBzdHJpbmc7XG4gIHVwZGF0ZWRBdDogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgTmV0d29ya0FsbG9jYXRpb25BbW91bnQgPSB7XG4gIGN1cnJlbmN5OiBzdHJpbmc7XG4gIHF1YW50aXR5Pzogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgTmV0d29ya0RlYWxsb2NhdGlvbiA9IE5ldHdvcmtBbGxvY2F0aW9uO1xuXG5leHBvcnQgdHlwZSBOZXR3b3JrU2V0dGxlbWVudCA9IHtcbiAgc3RhdHVzOiBOZXR3b3JrU2V0dGxlbWVudFN0YXR1cztcbiAgcmVhc29uPzogc3RyaW5nO1xuICBpZDogc3RyaW5nO1xuICBwYXJ0bmVySWQ6IHN0cmluZztcbiAgZXh0ZXJuYWxJZDogc3RyaW5nO1xuICByZWNvbmNpbGVkOiBib29sZWFuO1xuICBpbml0aWF0ZWRCeTogc3RyaW5nO1xuICBub3Rlcz86IHN0cmluZztcbiAgY3JlYXRlZEF0OiBzdHJpbmc7XG4gIHVwZGF0ZWRBdDogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgTmV0d29ya1NldHRsZW1lbnRUcmFuc2ZlciA9IHtcbiAgaWQ6IHN0cmluZztcbiAgY3VycmVuY3k6IHN0cmluZztcbiAgc2V0dGxlbWVudElkOiBzdHJpbmc7XG4gIHF1YW50aXR5OiBzdHJpbmc7XG4gIHR4SWRzOiBzdHJpbmdbXTtcbiAgc2V0dGxlbWVudFN0YXR1czogTmV0d29ya1NldHRsZW1lbnRTdGF0dXM7XG4gIHNldHRsZW1lbnROb3Rlcz86IHN0cmluZztcbiAgc291cmNlVHJhZGluZ0FjY291bnRJZD86IHN0cmluZztcbiAgc291cmNlQ2xpZW50TmFtZT86IHN0cmluZztcbiAgZGVzdGluYXRpb25UcmFkaW5nQWNjb3VudElkPzogc3RyaW5nO1xuICBkZXN0aW5hdGlvbkNsaWVudE5hbWU/OiBzdHJpbmc7XG4gIHNvdXJjZU5ldHdvcmtBY2NvdW50SWQ/OiBzdHJpbmc7XG4gIHNvdXJjZUNvbm5lY3Rpb25OYW1lPzogc3RyaW5nO1xuICBkZXN0aW5hdGlvbk5ldHdvcmtBY2NvdW50SWQ/OiBzdHJpbmc7XG4gIGRlc3RpbmF0aW9uQ29ubmVjdGlvbk5hbWU/OiBzdHJpbmc7XG4gIGNyZWF0ZWRBdDogc3RyaW5nO1xuICB1cGRhdGVkQXQ6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIE5ldHdvcmtTZXR0bGVtZW50U3RhdHVzID0gJ2ZhaWxlZCcgfCAnY29tcGxldGVkJyB8ICdwZW5kaW5nJztcblxuZXhwb3J0IHR5cGUgQ29ubmVjdGlvbktleVNjaGVtYSA9ICd0b2tlbicgfCAndG9rZW5BbmRTaWduYXR1cmUnIHwgJ2FwaUtleUFuZFNlY3JldCcgfCAnY2xlYXJsb29wJztcblxuZXhwb3J0IHR5cGUgTmV0d29ya1BhcnRuZXIgPSB7XG4gIGlkOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgaW5zdGl0dXRpb25JZDogc3RyaW5nO1xuICBpbnN0aXR1dGlvbklkZW50aWZpZXI6IHN0cmluZztcbiAgY29ubmVjdGlvbktleVNjaGVtYTogQ29ubmVjdGlvbktleVNjaGVtYTtcbiAgYWN0aXZlOiBib29sZWFuO1xuICBwdWJsaWNLZXk/OiBzdHJpbmc7XG59O1xuIl19
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* str2ab - Convert a string to an ArrayBuffer
|
|
3
|
+
* @param {string} str The string to convert
|
|
4
|
+
* @returns {ArrayBuffer} The ArrayBuffer
|
|
5
|
+
*/
|
|
6
|
+
export declare function str2ab(str: string): ArrayBuffer;
|
|
7
|
+
/**
|
|
8
|
+
* ab2str - Convert a buffer to a string
|
|
9
|
+
* @param {ArrayBuffer} buf The buffer to convert
|
|
10
|
+
* @returns {string} The string
|
|
11
|
+
*/
|
|
12
|
+
export declare function ab2str(buf: ArrayBuffer): string;
|
|
13
|
+
/**
|
|
14
|
+
* computeKey - Compute a key from a password and salt
|
|
15
|
+
* @param {string | Buffer} pass The password to use
|
|
16
|
+
* @param {Buffer} salt The salt to use
|
|
17
|
+
* @returns {Promise<Buffer>} The computed key
|
|
18
|
+
*/
|
|
19
|
+
export declare function computeKey(pass: string | Buffer, salt: Buffer): Promise<Buffer>;
|
|
20
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/bitgo/trading/network/utils.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAO/C;AAED;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,CAE/C;AAED;;;;;GAKG;AACH,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAkBrF"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.str2ab = str2ab;
|
|
7
|
+
exports.ab2str = ab2str;
|
|
8
|
+
exports.computeKey = computeKey;
|
|
9
|
+
const crypto_1 = __importDefault(require("crypto"));
|
|
10
|
+
/**
|
|
11
|
+
* str2ab - Convert a string to an ArrayBuffer
|
|
12
|
+
* @param {string} str The string to convert
|
|
13
|
+
* @returns {ArrayBuffer} The ArrayBuffer
|
|
14
|
+
*/
|
|
15
|
+
function str2ab(str) {
|
|
16
|
+
const buf = new ArrayBuffer(str.length);
|
|
17
|
+
const bufView = new Uint8Array(buf);
|
|
18
|
+
for (let i = 0, strLen = str.length; i < strLen; i++) {
|
|
19
|
+
bufView[i] = str.charCodeAt(i);
|
|
20
|
+
}
|
|
21
|
+
return buf;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* ab2str - Convert a buffer to a string
|
|
25
|
+
* @param {ArrayBuffer} buf The buffer to convert
|
|
26
|
+
* @returns {string} The string
|
|
27
|
+
*/
|
|
28
|
+
function ab2str(buf) {
|
|
29
|
+
return String.fromCharCode.apply(null, Array.from(new Uint8Array(buf)));
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* computeKey - Compute a key from a password and salt
|
|
33
|
+
* @param {string | Buffer} pass The password to use
|
|
34
|
+
* @param {Buffer} salt The salt to use
|
|
35
|
+
* @returns {Promise<Buffer>} The computed key
|
|
36
|
+
*/
|
|
37
|
+
async function computeKey(pass, salt) {
|
|
38
|
+
let resolvePromise;
|
|
39
|
+
let rejectPromise;
|
|
40
|
+
const promise = new Promise((resolve, reject) => {
|
|
41
|
+
resolvePromise = resolve;
|
|
42
|
+
rejectPromise = reject;
|
|
43
|
+
});
|
|
44
|
+
crypto_1.default.pbkdf2(pass, salt, 200000, 32, 'sha256', (err, derivedKey) => {
|
|
45
|
+
if (err !== null) {
|
|
46
|
+
rejectPromise(err);
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
resolvePromise(derivedKey);
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
return promise;
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYml0Z28vdHJhZGluZy9uZXR3b3JrL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBT0Esd0JBT0M7QUFPRCx3QkFFQztBQVFELGdDQWtCQztBQWpERCxvREFBNEI7QUFFNUI7Ozs7R0FJRztBQUNILFNBQWdCLE1BQU0sQ0FBQyxHQUFXO0lBQ2hDLE1BQU0sR0FBRyxHQUFHLElBQUksV0FBVyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4QyxNQUFNLE9BQU8sR0FBRyxJQUFJLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNwQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxNQUFNLEdBQUcsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7UUFDckQsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUNELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFnQixNQUFNLENBQUMsR0FBZ0I7SUFDckMsT0FBTyxNQUFNLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDMUUsQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0ksS0FBSyxVQUFVLFVBQVUsQ0FBQyxJQUFxQixFQUFFLElBQVk7SUFDbEUsSUFBSSxjQUF3QyxDQUFDO0lBQzdDLElBQUksYUFBd0MsQ0FBQztJQUU3QyxNQUFNLE9BQU8sR0FBb0IsSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7UUFDL0QsY0FBYyxHQUFHLE9BQU8sQ0FBQztRQUN6QixhQUFhLEdBQUcsTUFBTSxDQUFDO0lBQ3pCLENBQUMsQ0FBQyxDQUFDO0lBRUgsZ0JBQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxDQUFDLEdBQUcsRUFBRSxVQUFVLEVBQUUsRUFBRTtRQUNsRSxJQUFJLEdBQUcsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUNqQixhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDckIsQ0FBQzthQUFNLENBQUM7WUFDTixjQUFjLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDN0IsQ0FBQztJQUNILENBQUMsQ0FBQyxDQUFDO0lBRUgsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBjcnlwdG8gZnJvbSAnY3J5cHRvJztcblxuLyoqXG4gKiBzdHIyYWIgLSBDb252ZXJ0IGEgc3RyaW5nIHRvIGFuIEFycmF5QnVmZmVyXG4gKiBAcGFyYW0ge3N0cmluZ30gc3RyIFRoZSBzdHJpbmcgdG8gY29udmVydFxuICogQHJldHVybnMge0FycmF5QnVmZmVyfSBUaGUgQXJyYXlCdWZmZXJcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHN0cjJhYihzdHI6IHN0cmluZyk6IEFycmF5QnVmZmVyIHtcbiAgY29uc3QgYnVmID0gbmV3IEFycmF5QnVmZmVyKHN0ci5sZW5ndGgpO1xuICBjb25zdCBidWZWaWV3ID0gbmV3IFVpbnQ4QXJyYXkoYnVmKTtcbiAgZm9yIChsZXQgaSA9IDAsIHN0ckxlbiA9IHN0ci5sZW5ndGg7IGkgPCBzdHJMZW47IGkrKykge1xuICAgIGJ1ZlZpZXdbaV0gPSBzdHIuY2hhckNvZGVBdChpKTtcbiAgfVxuICByZXR1cm4gYnVmO1xufVxuXG4vKipcbiAqIGFiMnN0ciAtIENvbnZlcnQgYSBidWZmZXIgdG8gYSBzdHJpbmdcbiAqIEBwYXJhbSB7QXJyYXlCdWZmZXJ9IGJ1ZiBUaGUgYnVmZmVyIHRvIGNvbnZlcnRcbiAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBzdHJpbmdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFiMnN0cihidWY6IEFycmF5QnVmZmVyKTogc3RyaW5nIHtcbiAgcmV0dXJuIFN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkobnVsbCwgQXJyYXkuZnJvbShuZXcgVWludDhBcnJheShidWYpKSk7XG59XG5cbi8qKlxuICogY29tcHV0ZUtleSAtIENvbXB1dGUgYSBrZXkgZnJvbSBhIHBhc3N3b3JkIGFuZCBzYWx0XG4gKiBAcGFyYW0ge3N0cmluZyB8IEJ1ZmZlcn0gcGFzcyBUaGUgcGFzc3dvcmQgdG8gdXNlXG4gKiBAcGFyYW0ge0J1ZmZlcn0gc2FsdCBUaGUgc2FsdCB0byB1c2VcbiAqIEByZXR1cm5zIHtQcm9taXNlPEJ1ZmZlcj59IFRoZSBjb21wdXRlZCBrZXlcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNvbXB1dGVLZXkocGFzczogc3RyaW5nIHwgQnVmZmVyLCBzYWx0OiBCdWZmZXIpOiBQcm9taXNlPEJ1ZmZlcj4ge1xuICBsZXQgcmVzb2x2ZVByb21pc2U6IChyZXN1bHQ6IEJ1ZmZlcikgPT4gdm9pZDtcbiAgbGV0IHJlamVjdFByb21pc2U6IChyZWplY3Q6IHVua25vd24pID0+IHZvaWQ7XG5cbiAgY29uc3QgcHJvbWlzZTogUHJvbWlzZTxCdWZmZXI+ID0gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIHJlc29sdmVQcm9taXNlID0gcmVzb2x2ZTtcbiAgICByZWplY3RQcm9taXNlID0gcmVqZWN0O1xuICB9KTtcblxuICBjcnlwdG8ucGJrZGYyKHBhc3MsIHNhbHQsIDIwMDAwMCwgMzIsICdzaGEyNTYnLCAoZXJyLCBkZXJpdmVkS2V5KSA9PiB7XG4gICAgaWYgKGVyciAhPT0gbnVsbCkge1xuICAgICAgcmVqZWN0UHJvbWlzZShlcnIpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXNvbHZlUHJvbWlzZShkZXJpdmVkS2V5KTtcbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiBwcm9taXNlO1xufVxuIl19
|
|
@@ -1,43 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @prettier
|
|
3
|
+
*/
|
|
1
4
|
import { BitGoBase } from '../bitgoBase';
|
|
2
|
-
import {
|
|
5
|
+
import { ITradingAccount, SignPayloadParameters } from '../trading';
|
|
3
6
|
import { IWallet } from '../wallet';
|
|
7
|
+
import { TradingNetwork } from './network';
|
|
4
8
|
export declare class TradingAccount implements ITradingAccount {
|
|
5
9
|
private readonly bitgo;
|
|
6
10
|
private readonly enterpriseId;
|
|
7
11
|
wallet: IWallet;
|
|
8
12
|
constructor(enterpriseId: string, wallet: IWallet, bitgo: BitGoBase);
|
|
9
13
|
get id(): string;
|
|
10
|
-
/**
|
|
11
|
-
* Builds a payload authorizing trade from this trading account.
|
|
12
|
-
* @param params
|
|
13
|
-
* @param params.amounts[] array of amounts that will be traded as part of the settlement
|
|
14
|
-
* @param params.amounts[].accountId the accountId corresponding with the sending and receiving amounts for the settlement
|
|
15
|
-
* @param params.amounts[].sendAmount amount of currency sent by trading account of given accountId
|
|
16
|
-
* @param params.amounts[].sendCurrency currency of amount sent by trading account of given accountId
|
|
17
|
-
* @param params.amounts[].receiveAmount amount of currency received by trading account of given accountId
|
|
18
|
-
* @param params.amounts[].receiveCurrency currency of amount received by trading account of given accountId
|
|
19
|
-
* @returns unsigned trade payload for the given parameters. This object should be stringified with JSON.stringify() before being submitted
|
|
20
|
-
*/
|
|
21
|
-
buildPayload(params: BuildPayloadParameters): Promise<Payload>;
|
|
22
|
-
/**
|
|
23
|
-
* Verifies that a payload received from BitGo sufficiently matches the expected parameters. This is used to prevent
|
|
24
|
-
* man-in-the-middle attacks which could maliciously alter the contents of a payload.
|
|
25
|
-
* @param params parameters used to build the payload
|
|
26
|
-
* @param payload payload received from the BitGo API
|
|
27
|
-
* @returns true if the payload's sensitive fields match, false if the payload may have been tampered with
|
|
28
|
-
*/
|
|
29
|
-
verifyPayload(params: BuildPayloadParameters, payload: string): boolean;
|
|
30
|
-
/**
|
|
31
|
-
* Calculates the necessary fees to complete a settlement between two parties, based on the amounts and currencies of the settlement.
|
|
32
|
-
* @param params
|
|
33
|
-
* @param params.counterpartyAccountId Account ID of the counterparty of the settlement
|
|
34
|
-
* @param params.sendCurrency Currency to be sent as part of the settlement
|
|
35
|
-
* @param params.sendAmount Amount of currency (in base units such as cents, satoshis, or wei) to be sent
|
|
36
|
-
* @param params.receiveCurrency Currency to be received as part of the settlement
|
|
37
|
-
* @param params.receiveAmount Amount of currency (in base units such as cents, satoshis, or wei) to be received
|
|
38
|
-
* @returns Fee rate, currency, and total amount of the described settlement
|
|
39
|
-
*/
|
|
40
|
-
calculateSettlementFees(params: CalculateSettlementFeesParams): Promise<SettlementFees>;
|
|
41
14
|
/**
|
|
42
15
|
* Signs an arbitrary payload with the user key on this trading account
|
|
43
16
|
* @param params
|
|
@@ -46,8 +19,11 @@ export declare class TradingAccount implements ITradingAccount {
|
|
|
46
19
|
* @returns hex-encoded signature of the payload
|
|
47
20
|
*/
|
|
48
21
|
signPayload(params: SignPayloadParameters): Promise<string>;
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
22
|
+
/**
|
|
23
|
+
* Get Trade Network
|
|
24
|
+
* To enable Off Exchange Allocation & Settlement, contact support@bitgo.com.
|
|
25
|
+
* BitGo provides a UI experience for clients at: https://app.bitgo.com/web/enterprises/<enterpriseId>/allocate
|
|
26
|
+
*/
|
|
27
|
+
toNetwork(): TradingNetwork;
|
|
52
28
|
}
|
|
53
29
|
//# sourceMappingURL=tradingAccount.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tradingAccount.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/trading/tradingAccount.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tradingAccount.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/trading/tradingAccount.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAE3C,qBAAa,cAAe,YAAW,eAAe;IACpD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAY;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IAE/B,MAAM,EAAE,OAAO,CAAC;gBAEX,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS;IAMnE,IAAI,EAAE,IAAI,MAAM,CAEf;IAED;;;;;;OAMG;IACG,WAAW,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC;IAUjE;;;;OAIG;IACH,SAAS,IAAI,cAAc;CAG5B"}
|
|
@@ -1,12 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.TradingAccount = void 0;
|
|
4
|
-
|
|
5
|
-
* @prettier
|
|
6
|
-
*/
|
|
7
|
-
const bignumber_js_1 = require("bignumber.js");
|
|
8
|
-
const trading_1 = require("../trading");
|
|
9
|
-
const TRADE_PAYLOAD_VERSION = '1.2.0';
|
|
4
|
+
const network_1 = require("./network");
|
|
10
5
|
class TradingAccount {
|
|
11
6
|
constructor(enterpriseId, wallet, bitgo) {
|
|
12
7
|
this.enterpriseId = enterpriseId;
|
|
@@ -16,87 +11,6 @@ class TradingAccount {
|
|
|
16
11
|
get id() {
|
|
17
12
|
return this.wallet.id();
|
|
18
13
|
}
|
|
19
|
-
/**
|
|
20
|
-
* Builds a payload authorizing trade from this trading account.
|
|
21
|
-
* @param params
|
|
22
|
-
* @param params.amounts[] array of amounts that will be traded as part of the settlement
|
|
23
|
-
* @param params.amounts[].accountId the accountId corresponding with the sending and receiving amounts for the settlement
|
|
24
|
-
* @param params.amounts[].sendAmount amount of currency sent by trading account of given accountId
|
|
25
|
-
* @param params.amounts[].sendCurrency currency of amount sent by trading account of given accountId
|
|
26
|
-
* @param params.amounts[].receiveAmount amount of currency received by trading account of given accountId
|
|
27
|
-
* @param params.amounts[].receiveCurrency currency of amount received by trading account of given accountId
|
|
28
|
-
* @returns unsigned trade payload for the given parameters. This object should be stringified with JSON.stringify() before being submitted
|
|
29
|
-
*/
|
|
30
|
-
async buildPayload(params) {
|
|
31
|
-
const url = this.bitgo.microservicesUrl(`/api/trade/v1/enterprise/${this.enterpriseId}/account/${this.id}/payload`);
|
|
32
|
-
const body = {
|
|
33
|
-
version: TRADE_PAYLOAD_VERSION,
|
|
34
|
-
amounts: params.amounts,
|
|
35
|
-
};
|
|
36
|
-
const response = (await this.bitgo.post(url).send(body).result());
|
|
37
|
-
if (!this.verifyPayload(params, response.payload)) {
|
|
38
|
-
throw new Error('Unable to verify trade payload. You may need to update the BitGo SDK, or the payload may have been tampered with.');
|
|
39
|
-
}
|
|
40
|
-
return JSON.parse(response.payload);
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Verifies that a payload received from BitGo sufficiently matches the expected parameters. This is used to prevent
|
|
44
|
-
* man-in-the-middle attacks which could maliciously alter the contents of a payload.
|
|
45
|
-
* @param params parameters used to build the payload
|
|
46
|
-
* @param payload payload received from the BitGo API
|
|
47
|
-
* @returns true if the payload's sensitive fields match, false if the payload may have been tampered with
|
|
48
|
-
*/
|
|
49
|
-
verifyPayload(params, payload) {
|
|
50
|
-
const payloadObj = JSON.parse(payload);
|
|
51
|
-
const paramsCopy = JSON.parse(JSON.stringify(params)); // needs to be a deep copy
|
|
52
|
-
// Verifies that for each party in the payload, we requested a matching party, only checking sensitive fields
|
|
53
|
-
let validAmounts = 0;
|
|
54
|
-
for (const amount of payloadObj.amounts) {
|
|
55
|
-
const matchingExpectedParty = paramsCopy.amounts.findIndex((expectedAmount) => amount.accountId === expectedAmount.accountId &&
|
|
56
|
-
amount.sendCurrency === expectedAmount.sendCurrency &&
|
|
57
|
-
amount.sendSubtotal === expectedAmount.sendAmount &&
|
|
58
|
-
amount.receiveAmount === expectedAmount.receiveAmount &&
|
|
59
|
-
amount.receiveCurrency === expectedAmount.receiveCurrency);
|
|
60
|
-
if (matchingExpectedParty === -1) {
|
|
61
|
-
// matchingExpectedParty not found to the payloadObject
|
|
62
|
-
// payload is not valid
|
|
63
|
-
break;
|
|
64
|
-
}
|
|
65
|
-
if (amount.fees && amount.fees.length > 0) {
|
|
66
|
-
let feeTotal = new bignumber_js_1.BigNumber(0);
|
|
67
|
-
for (const fee of amount.fees) {
|
|
68
|
-
feeTotal = feeTotal.plus(new bignumber_js_1.BigNumber(fee.feeAmount));
|
|
69
|
-
}
|
|
70
|
-
const expectedTotalAmount = new bignumber_js_1.BigNumber(paramsCopy.amounts[matchingExpectedParty].sendAmount).plus(feeTotal);
|
|
71
|
-
if (expectedTotalAmount.toString() !== amount.sendAmount) {
|
|
72
|
-
// expected total does not match the sendAmount of the payload
|
|
73
|
-
// payload is not valid
|
|
74
|
-
break;
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
// matching party found, and fee found
|
|
78
|
-
validAmounts = validAmounts + 1;
|
|
79
|
-
// delete so we ensure no duplicates
|
|
80
|
-
paramsCopy.amounts.splice(matchingExpectedParty, 1);
|
|
81
|
-
}
|
|
82
|
-
return (payloadObj.accountId === this.id &&
|
|
83
|
-
payloadObj.amounts.length === params.amounts.length &&
|
|
84
|
-
validAmounts === payloadObj.amounts.length);
|
|
85
|
-
}
|
|
86
|
-
/**
|
|
87
|
-
* Calculates the necessary fees to complete a settlement between two parties, based on the amounts and currencies of the settlement.
|
|
88
|
-
* @param params
|
|
89
|
-
* @param params.counterpartyAccountId Account ID of the counterparty of the settlement
|
|
90
|
-
* @param params.sendCurrency Currency to be sent as part of the settlement
|
|
91
|
-
* @param params.sendAmount Amount of currency (in base units such as cents, satoshis, or wei) to be sent
|
|
92
|
-
* @param params.receiveCurrency Currency to be received as part of the settlement
|
|
93
|
-
* @param params.receiveAmount Amount of currency (in base units such as cents, satoshis, or wei) to be received
|
|
94
|
-
* @returns Fee rate, currency, and total amount of the described settlement
|
|
95
|
-
*/
|
|
96
|
-
async calculateSettlementFees(params) {
|
|
97
|
-
const url = this.bitgo.microservicesUrl(`/api/trade/v1/enterprise/${this.enterpriseId}/account/${this.id}/calculatefees`);
|
|
98
|
-
return await this.bitgo.post(url).send(params).result();
|
|
99
|
-
}
|
|
100
14
|
/**
|
|
101
15
|
* Signs an arbitrary payload with the user key on this trading account
|
|
102
16
|
* @param params
|
|
@@ -113,15 +27,14 @@ class TradingAccount {
|
|
|
113
27
|
const payload = typeof params.payload === 'string' ? params.payload : JSON.stringify(params.payload);
|
|
114
28
|
return (await this.wallet.baseCoin.signMessage({ prv }, payload)).toString('hex');
|
|
115
29
|
}
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
return new trading_1.TradingPartners(this.bitgo, this.enterpriseId, this);
|
|
30
|
+
/**
|
|
31
|
+
* Get Trade Network
|
|
32
|
+
* To enable Off Exchange Allocation & Settlement, contact support@bitgo.com.
|
|
33
|
+
* BitGo provides a UI experience for clients at: https://app.bitgo.com/web/enterprises/<enterpriseId>/allocate
|
|
34
|
+
*/
|
|
35
|
+
toNetwork() {
|
|
36
|
+
return new network_1.TradingNetwork(this.enterpriseId, this.wallet, this.bitgo);
|
|
124
37
|
}
|
|
125
38
|
}
|
|
126
39
|
exports.TradingAccount = TradingAccount;
|
|
127
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhZGluZ0FjY291bnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vdHJhZGluZy90cmFkaW5nQWNjb3VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7R0FFRztBQUNILCtDQUF5QztBQUV6Qyx3Q0Fhb0I7QUFHcEIsTUFBTSxxQkFBcUIsR0FBRyxPQUFPLENBQUM7QUFFdEMsTUFBYSxjQUFjO0lBTXpCLFlBQVksWUFBb0IsRUFBRSxNQUFlLEVBQUUsS0FBZ0I7UUFDakUsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7UUFDakMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQUVELElBQUksRUFBRTtRQUNKLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQ7Ozs7Ozs7Ozs7T0FVRztJQUNILEtBQUssQ0FBQyxZQUFZLENBQUMsTUFBOEI7UUFDL0MsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyw0QkFBNEIsSUFBSSxDQUFDLFlBQVksWUFBWSxJQUFJLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUVwSCxNQUFNLElBQUksR0FBRztZQUNYLE9BQU8sRUFBRSxxQkFBcUI7WUFDOUIsT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPO1NBQ3hCLENBQUM7UUFFRixNQUFNLFFBQVEsR0FBRyxDQUFDLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFRLENBQUM7UUFFekUsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNqRCxN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QUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNsRSxDQUFDO0NBQ0Y7QUFwSkQsd0NBb0pDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcHJldHRpZXJcbiAqL1xuaW1wb3J0IHsgQmlnTnVtYmVyIH0gZnJvbSAnYmlnbnVtYmVyLmpzJztcbmltcG9ydCB7IEJpdEdvQmFzZSB9IGZyb20gJy4uL2JpdGdvQmFzZSc7XG5pbXBvcnQge1xuICBBZmZpcm1hdGlvbnMsXG4gIEJ1aWxkUGF5bG9hZFBhcmFtZXRlcnMsXG4gIENhbGN1bGF0ZVNldHRsZW1lbnRGZWVzUGFyYW1zLFxuICBJQWZmaXJtYXRpb25zLFxuICBJU2V0dGxlbWVudHMsXG4gIElUcmFkaW5nQWNjb3VudCxcbiAgSVRyYWRpbmdQYXJ0bmVycyxcbiAgUGF5bG9hZCxcbiAgU2V0dGxlbWVudEZlZXMsXG4gIFNldHRsZW1lbnRzLFxuICBTaWduUGF5bG9hZFBhcmFtZXRlcnMsXG4gIFRyYWRpbmdQYXJ0bmVycyxcbn0gZnJvbSAnLi4vdHJhZGluZyc7XG5pbXBvcnQgeyBJV2FsbGV0IH0gZnJvbSAnLi4vd2FsbGV0JztcblxuY29uc3QgVFJBREVfUEFZTE9BRF9WRVJTSU9OID0gJzEuMi4wJztcblxuZXhwb3J0IGNsYXNzIFRyYWRpbmdBY2NvdW50IGltcGxlbWVudHMgSVRyYWRpbmdBY2NvdW50IHtcbiAgcHJpdmF0ZSByZWFkb25seSBiaXRnbzogQml0R29CYXNlO1xuICBwcml2YXRlIHJlYWRvbmx5IGVudGVycHJpc2VJZDogc3RyaW5nO1xuXG4gIHB1YmxpYyB3YWxsZXQ6IElXYWxsZXQ7XG5cbiAgY29uc3RydWN0b3IoZW50ZXJwcmlzZUlkOiBzdHJpbmcsIHdhbGxldDogSVdhbGxldCwgYml0Z286IEJpdEdvQmFzZSkge1xuICAgIHRoaXMuZW50ZXJwcmlzZUlkID0gZW50ZXJwcmlzZUlkO1xuICAgIHRoaXMud2FsbGV0ID0gd2FsbGV0O1xuICAgIHRoaXMuYml0Z28gPSBiaXRnbztcbiAgfVxuXG4gIGdldCBpZCgpIHtcbiAgICByZXR1cm4gdGhpcy53YWxsZXQuaWQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZHMgYSBwYXlsb2FkIGF1dGhvcml6aW5nIHRyYWRlIGZyb20gdGhpcyB0cmFkaW5nIGFjY291bnQuXG4gICAqIEBwYXJhbSBwYXJhbXNcbiAgICogQHBhcmFtIHBhcmFtcy5hbW91bnRzW10gYXJyYXkgb2YgYW1vdW50cyB0aGF0IHdpbGwgYmUgdHJhZGVkIGFzIHBhcnQgb2YgdGhlIHNldHRsZW1lbnRcbiAgICogQHBhcmFtIHBhcmFtcy5hbW91bnRzW10uYWNjb3VudElkIHRoZSBhY2NvdW50SWQgY29ycmVzcG9uZGluZyB3aXRoIHRoZSBzZW5kaW5nIGFuZCByZWNlaXZpbmcgYW1vdW50cyBmb3IgdGhlIHNldHRsZW1lbnRcbiAgICogQHBhcmFtIHBhcmFtcy5hbW91bnRzW10uc2VuZEFtb3VudCBhbW91bnQgb2YgY3VycmVuY3kgc2VudCBieSB0cmFkaW5nIGFjY291bnQgb2YgZ2l2ZW4gYWNjb3VudElkXG4gICAqIEBwYXJhbSBwYXJhbXMuYW1vdW50c1tdLnNlbmRDdXJyZW5jeSBjdXJyZW5jeSBvZiBhbW91bnQgc2VudCBieSB0cmFkaW5nIGFjY291bnQgb2YgZ2l2ZW4gYWNjb3VudElkXG4gICAqIEBwYXJhbSBwYXJhbXMuYW1vdW50c1tdLnJlY2VpdmVBbW91bnQgYW1vdW50IG9mIGN1cnJlbmN5IHJlY2VpdmVkIGJ5IHRyYWRpbmcgYWNjb3VudCBvZiBnaXZlbiBhY2NvdW50SWRcbiAgICogQHBhcmFtIHBhcmFtcy5hbW91bnRzW10ucmVjZWl2ZUN1cnJlbmN5IGN1cnJlbmN5IG9mIGFtb3VudCByZWNlaXZlZCBieSB0cmFkaW5nIGFjY291bnQgb2YgZ2l2ZW4gYWNjb3VudElkXG4gICAqIEByZXR1cm5zIHVuc2lnbmVkIHRyYWRlIHBheWxvYWQgZm9yIHRoZSBnaXZlbiBwYXJhbWV0ZXJzLiBUaGlzIG9iamVjdCBzaG91bGQgYmUgc3RyaW5naWZpZWQgd2l0aCBKU09OLnN0cmluZ2lmeSgpIGJlZm9yZSBiZWluZyBzdWJtaXR0ZWRcbiAgICovXG4gIGFzeW5jIGJ1aWxkUGF5bG9hZChwYXJhbXM6IEJ1aWxkUGF5bG9hZFBhcmFtZXRlcnMpOiBQcm9taXNlPFBheWxvYWQ+IHtcbiAgICBjb25zdCB1cmwgPSB0aGlzLmJpdGdvLm1pY3Jvc2VydmljZXNVcmwoYC9hcGkvdHJhZGUvdjEvZW50ZXJwcmlzZS8ke3RoaXMuZW50ZXJwcmlzZUlkfS9hY2NvdW50LyR7dGhpcy5pZH0vcGF5bG9hZGApO1xuXG4gICAgY29uc3QgYm9keSA9IHtcbiAgICAgIHZlcnNpb246IFRSQURFX1BBWUxPQURfVkVSU0lPTixcbiAgICAgIGFtb3VudHM6IHBhcmFtcy5hbW91bnRzLFxuICAgIH07XG5cbiAgICBjb25zdCByZXNwb25zZSA9IChhd2FpdCB0aGlzLmJpdGdvLnBvc3QodXJsKS5zZW5kKGJvZHkpLnJlc3VsdCgpKSBhcyBhbnk7XG5cbiAgICBpZiAoIXRoaXMudmVyaWZ5UGF5bG9hZChwYXJhbXMsIHJlc3BvbnNlLnBheWxvYWQpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdVbmFibGUgdG8gdmVyaWZ5IHRyYWRlIHBheWxvYWQuIFlvdSBtYXkgbmVlZCB0byB1cGRhdGUgdGhlIEJpdEdvIFNESywgb3IgdGhlIHBheWxvYWQgbWF5IGhhdmUgYmVlbiB0YW1wZXJlZCB3aXRoLidcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIEpTT04ucGFyc2UocmVzcG9uc2UucGF5bG9hZCkgYXMgUGF5bG9hZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBWZXJpZmllcyB0aGF0IGEgcGF5bG9hZCByZWNlaXZlZCBmcm9tIEJpdEdvIHN1ZmZpY2llbnRseSBtYXRjaGVzIHRoZSBleHBlY3RlZCBwYXJhbWV0ZXJzLiBUaGlzIGlzIHVzZWQgdG8gcHJldmVudFxuICAgKiBtYW4taW4tdGhlLW1pZGRsZSBhdHRhY2tzIHdoaWNoIGNvdWxkIG1hbGljaW91c2x5IGFsdGVyIHRoZSBjb250ZW50cyBvZiBhIHBheWxvYWQuXG4gICAqIEBwYXJhbSBwYXJhbXMgcGFyYW1ldGVycyB1c2VkIHRvIGJ1aWxkIHRoZSBwYXlsb2FkXG4gICAqIEBwYXJhbSBwYXlsb2FkIHBheWxvYWQgcmVjZWl2ZWQgZnJvbSB0aGUgQml0R28gQVBJXG4gICAqIEByZXR1cm5zIHRydWUgaWYgdGhlIHBheWxvYWQncyBzZW5zaXRpdmUgZmllbGRzIG1hdGNoLCBmYWxzZSBpZiB0aGUgcGF5bG9hZCBtYXkgaGF2ZSBiZWVuIHRhbXBlcmVkIHdpdGhcbiAgICovXG4gIHZlcmlmeVBheWxvYWQocGFyYW1zOiBCdWlsZFBheWxvYWRQYXJhbWV0ZXJzLCBwYXlsb2FkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCBwYXlsb2FkT2JqID0gSlNPTi5wYXJzZShwYXlsb2FkKTtcbiAgICBjb25zdCBwYXJhbXNDb3B5ID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShwYXJhbXMpKTsgLy8gbmVlZHMgdG8gYmUgYSBkZWVwIGNvcHlcblxuICAgIC8vIFZlcmlmaWVzIHRoYXQgZm9yIGVhY2ggcGFydHkgaW4gdGhlIHBheWxvYWQsIHdlIHJlcXVlc3RlZCBhIG1hdGNoaW5nIHBhcnR5LCBvbmx5IGNoZWNraW5nIHNlbnNpdGl2ZSBmaWVsZHNcbiAgICBsZXQgdmFsaWRBbW91bnRzID0gMDtcbiAgICBmb3IgKGNvbnN0IGFtb3VudCBvZiBwYXlsb2FkT2JqLmFtb3VudHMpIHtcbiAgICAgIGNvbnN0IG1hdGNoaW5nRXhwZWN0ZWRQYXJ0eSA9IHBhcmFtc0NvcHkuYW1vdW50cy5maW5kSW5kZXgoXG4gICAgICAgIChleHBlY3RlZEFtb3VudCkgPT5cbiAgICAgICAgICBhbW91bnQuYWNjb3VudElkID09PSBleHBlY3RlZEFtb3VudC5hY2NvdW50SWQgJiZcbiAgICAgICAgICBhbW91bnQuc2VuZEN1cnJlbmN5ID09PSBleHBlY3RlZEFtb3VudC5zZW5kQ3VycmVuY3kgJiZcbiAgICAgICAgICBhbW91bnQuc2VuZFN1YnRvdGFsID09PSBleHBlY3RlZEFtb3VudC5zZW5kQW1vdW50ICYmXG4gICAgICAgICAgYW1vdW50LnJlY2VpdmVBbW91bnQgPT09IGV4cGVjdGVkQW1vdW50LnJlY2VpdmVBbW91bnQgJiZcbiAgICAgICAgICBhbW91bnQucmVjZWl2ZUN1cnJlbmN5ID09PSBleHBlY3RlZEFtb3VudC5yZWNlaXZlQ3VycmVuY3lcbiAgICAgICk7XG5cbiAgICAgIGlmIChtYXRjaGluZ0V4cGVjdGVkUGFydHkgPT09IC0xKSB7XG4gICAgICAgIC8vIG1hdGNoaW5nRXhwZWN0ZWRQYXJ0eSBub3QgZm91bmQgdG8gdGhlIHBheWxvYWRPYmplY3RcbiAgICAgICAgLy8gcGF5bG9hZCBpcyBub3QgdmFsaWRcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIGlmIChhbW91bnQuZmVlcyAmJiBhbW91bnQuZmVlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgIGxldCBmZWVUb3RhbCA9IG5ldyBCaWdOdW1iZXIoMCk7XG4gICAgICAgIGZvciAoY29uc3QgZmVlIG9mIGFtb3VudC5mZWVzKSB7XG4gICAgICAgICAgZmVlVG90YWwgPSBmZWVUb3RhbC5wbHVzKG5ldyBCaWdOdW1iZXIoZmVlLmZlZUFtb3VudCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZXhwZWN0ZWRUb3RhbEFtb3VudCA9IG5ldyBCaWdOdW1iZXIocGFyYW1zQ29weS5hbW91bnRzW21hdGNoaW5nRXhwZWN0ZWRQYXJ0eV0uc2VuZEFtb3VudCkucGx1cyhmZWVUb3RhbCk7XG4gICAgICAgIGlmIChleHBlY3RlZFRvdGFsQW1vdW50LnRvU3RyaW5nKCkgIT09IGFtb3VudC5zZW5kQW1vdW50KSB7XG4gICAgICAgICAgLy8gZXhwZWN0ZWQgdG90YWwgZG9lcyBub3QgbWF0Y2ggdGhlIHNlbmRBbW91bnQgb2YgdGhlIHBheWxvYWRcbiAgICAgICAgICAvLyBwYXlsb2FkIGlzIG5vdCB2YWxpZFxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIG1hdGNoaW5nIHBhcnR5IGZvdW5kLCBhbmQgZmVlIGZvdW5kXG4gICAgICB2YWxpZEFtb3VudHMgPSB2YWxpZEFtb3VudHMgKyAxO1xuICAgICAgLy8gZGVsZXRlIHNvIHdlIGVuc3VyZSBubyBkdXBsaWNhdGVzXG4gICAgICBwYXJhbXNDb3B5LmFtb3VudHMuc3BsaWNlKG1hdGNoaW5nRXhwZWN0ZWRQYXJ0eSwgMSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIChcbiAgICAgIHBheWxvYWRPYmouYWNjb3VudElkID09PSB0aGlzLmlkICYmXG4gICAgICBwYXlsb2FkT2JqLmFtb3VudHMubGVuZ3RoID09PSBwYXJhbXMuYW1vdW50cy5sZW5ndGggJiZcbiAgICAgIHZhbGlkQW1vdW50cyA9PT0gcGF5bG9hZE9iai5hbW91bnRzLmxlbmd0aFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ2FsY3VsYXRlcyB0aGUgbmVjZXNzYXJ5IGZlZXMgdG8gY29tcGxldGUgYSBzZXR0bGVtZW50IGJldHdlZW4gdHdvIHBhcnRpZXMsIGJhc2VkIG9uIHRoZSBhbW91bnRzIGFuZCBjdXJyZW5jaWVzIG9mIHRoZSBzZXR0bGVtZW50LlxuICAgKiBAcGFyYW0gcGFyYW1zXG4gICAqIEBwYXJhbSBwYXJhbXMuY291bnRlcnBhcnR5QWNjb3VudElkIEFjY291bnQgSUQgb2YgdGhlIGNvdW50ZXJwYXJ0eSBvZiB0aGUgc2V0dGxlbWVudFxuICAgKiBAcGFyYW0gcGFyYW1zLnNlbmRDdXJyZW5jeSBDdXJyZW5jeSB0byBiZSBzZW50IGFzIHBhcnQgb2YgdGhlIHNldHRsZW1lbnRcbiAgICogQHBhcmFtIHBhcmFtcy5zZW5kQW1vdW50IEFtb3VudCBvZiBjdXJyZW5jeSAoaW4gYmFzZSB1bml0cyBzdWNoIGFzIGNlbnRzLCBzYXRvc2hpcywgb3Igd2VpKSB0byBiZSBzZW50XG4gICAqIEBwYXJhbSBwYXJhbXMucmVjZWl2ZUN1cnJlbmN5IEN1cnJlbmN5IHRvIGJlIHJlY2VpdmVkIGFzIHBhcnQgb2YgdGhlIHNldHRsZW1lbnRcbiAgICogQHBhcmFtIHBhcmFtcy5yZWNlaXZlQW1vdW50IEFtb3VudCBvZiBjdXJyZW5jeSAoaW4gYmFzZSB1bml0cyBzdWNoIGFzIGNlbnRzLCBzYXRvc2hpcywgb3Igd2VpKSB0byBiZSByZWNlaXZlZFxuICAgKiBAcmV0dXJucyBGZWUgcmF0ZSwgY3VycmVuY3ksIGFuZCB0b3RhbCBhbW91bnQgb2YgdGhlIGRlc2NyaWJlZCBzZXR0bGVtZW50XG4gICAqL1xuICBhc3luYyBjYWxjdWxhdGVTZXR0bGVtZW50RmVlcyhwYXJhbXM6IENhbGN1bGF0ZVNldHRsZW1lbnRGZWVzUGFyYW1zKTogUHJvbWlzZTxTZXR0bGVtZW50RmVlcz4ge1xuICAgIGNvbnN0IHVybCA9IHRoaXMuYml0Z28ubWljcm9zZXJ2aWNlc1VybChcbiAgICAgIGAvYXBpL3RyYWRlL3YxL2VudGVycHJpc2UvJHt0aGlzLmVudGVycHJpc2VJZH0vYWNjb3VudC8ke3RoaXMuaWR9L2NhbGN1bGF0ZWZlZXNgXG4gICAgKTtcblxuICAgIHJldHVybiBhd2FpdCB0aGlzLmJpdGdvLnBvc3QodXJsKS5zZW5kKHBhcmFtcykucmVzdWx0KCk7XG4gIH1cblxuICAvKipcbiAgICogU2lnbnMgYW4gYXJiaXRyYXJ5IHBheWxvYWQgd2l0aCB0aGUgdXNlciBrZXkgb24gdGhpcyB0cmFkaW5nIGFjY291bnRcbiAgICogQHBhcmFtIHBhcmFtc1xuICAgKiBAcGFyYW0gcGFyYW1zLnBheWxvYWQgYXJiaXRyYXJ5IHBheWxvYWQgb2JqZWN0IChzdHJpbmcgfCBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPilcbiAgICogQHBhcmFtIHBhcmFtcy53YWxsZXRQYXNzcGhyYXNlIHBhc3NwaHJhc2Ugb24gdGhpcyB0cmFkaW5nIGFjY291bnQsIHVzZWQgdG8gdW5sb2NrIHRoZSBhY2NvdW50IHVzZXIga2V5XG4gICAqIEByZXR1cm5zIGhleC1lbmNvZGVkIHNpZ25hdHVyZSBvZiB0aGUgcGF5bG9hZFxuICAgKi9cbiAgYXN5bmMgc2lnblBheWxvYWQocGFyYW1zOiBTaWduUGF5bG9hZFBhcmFtZXRlcnMpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGNvbnN0IGtleSA9IChhd2FpdCB0aGlzLndhbGxldC5iYXNlQ29pbi5rZXljaGFpbnMoKS5nZXQoeyBpZDogdGhpcy53YWxsZXQua2V5SWRzKClbMF0gfSkpIGFzIGFueTtcbiAgICBjb25zdCBwcnYgPSB0aGlzLndhbGxldC5iaXRnby5kZWNyeXB0KHtcbiAgICAgIGlucHV0OiBrZXkuZW5jcnlwdGVkUHJ2LFxuICAgICAgcGFzc3dvcmQ6IHBhcmFtcy53YWxsZXRQYXNzcGhyYXNlLFxuICAgIH0pO1xuICAgIGNvbnN0IHBheWxvYWQgPSB0eXBlb2YgcGFyYW1zLnBheWxvYWQgPT09ICdzdHJpbmcnID8gcGFyYW1zLnBheWxvYWQgOiBKU09OLnN0cmluZ2lmeShwYXJhbXMucGF5bG9hZCk7XG4gICAgcmV0dXJuICgoYXdhaXQgdGhpcy53YWxsZXQuYmFzZUNvaW4uc2lnbk1lc3NhZ2UoeyBwcnYgfSwgcGF5bG9hZCkpIGFzIGFueSkudG9TdHJpbmcoJ2hleCcpO1xuICB9XG5cbiAgYWZmaXJtYXRpb25zKCk6IElBZmZpcm1hdGlvbnMge1xuICAgIHJldHVybiBuZXcgQWZmaXJtYXRpb25zKHRoaXMuYml0Z28sIHRoaXMuZW50ZXJwcmlzZUlkLCB0aGlzKTtcbiAgfVxuXG4gIHNldHRsZW1lbnRzKCk6IElTZXR0bGVtZW50cyB7XG4gICAgcmV0dXJuIG5ldyBTZXR0bGVtZW50cyh0aGlzLmJpdGdvLCB0aGlzLmVudGVycHJpc2VJZCwgdGhpcyk7XG4gIH1cblxuICBwYXJ0bmVycygpOiBJVHJhZGluZ1BhcnRuZXJzIHtcbiAgICByZXR1cm4gbmV3IFRyYWRpbmdQYXJ0bmVycyh0aGlzLmJpdGdvLCB0aGlzLmVudGVycHJpc2VJZCwgdGhpcyk7XG4gIH1cbn1cbiJdfQ==
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhZGluZ0FjY291bnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vdHJhZGluZy90cmFkaW5nQWNjb3VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFNQSx1Q0FBMkM7QUFFM0MsTUFBYSxjQUFjO0lBTXpCLFlBQVksWUFBb0IsRUFBRSxNQUFlLEVBQUUsS0FBZ0I7UUFDakUsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7UUFDakMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQUVELElBQUksRUFBRTtRQUNKLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsS0FBSyxDQUFDLFdBQVcsQ0FBQyxNQUE2QjtRQUM3QyxNQUFNLEdBQUcsR0FBRyxDQUFDLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFRLENBQUM7UUFDakcsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDO1lBQ3BDLEtBQUssRUFBRSxHQUFHLENBQUMsWUFBWTtZQUN2QixRQUFRLEVBQUUsTUFBTSxDQUFDLGdCQUFnQjtTQUNsQyxDQUFDLENBQUM7UUFDSCxNQUFNLE9BQU8sR0FBRyxPQUFPLE1BQU0sQ0FBQyxPQUFPLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNyRyxPQUFRLENBQUMsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRSxHQUFHLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBUyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3RixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFNBQVM7UUFDUCxPQUFPLElBQUksd0JBQWMsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hFLENBQUM7Q0FDRjtBQXpDRCx3Q0F5Q0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwcmV0dGllclxuICovXG5pbXBvcnQgeyBCaXRHb0Jhc2UgfSBmcm9tICcuLi9iaXRnb0Jhc2UnO1xuaW1wb3J0IHsgSVRyYWRpbmdBY2NvdW50LCBTaWduUGF5bG9hZFBhcmFtZXRlcnMgfSBmcm9tICcuLi90cmFkaW5nJztcbmltcG9ydCB7IElXYWxsZXQgfSBmcm9tICcuLi93YWxsZXQnO1xuaW1wb3J0IHsgVHJhZGluZ05ldHdvcmsgfSBmcm9tICcuL25ldHdvcmsnO1xuXG5leHBvcnQgY2xhc3MgVHJhZGluZ0FjY291bnQgaW1wbGVtZW50cyBJVHJhZGluZ0FjY291bnQge1xuICBwcml2YXRlIHJlYWRvbmx5IGJpdGdvOiBCaXRHb0Jhc2U7XG4gIHByaXZhdGUgcmVhZG9ubHkgZW50ZXJwcmlzZUlkOiBzdHJpbmc7XG5cbiAgcHVibGljIHdhbGxldDogSVdhbGxldDtcblxuICBjb25zdHJ1Y3RvcihlbnRlcnByaXNlSWQ6IHN0cmluZywgd2FsbGV0OiBJV2FsbGV0LCBiaXRnbzogQml0R29CYXNlKSB7XG4gICAgdGhpcy5lbnRlcnByaXNlSWQgPSBlbnRlcnByaXNlSWQ7XG4gICAgdGhpcy53YWxsZXQgPSB3YWxsZXQ7XG4gICAgdGhpcy5iaXRnbyA9IGJpdGdvO1xuICB9XG5cbiAgZ2V0IGlkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMud2FsbGV0LmlkKCk7XG4gIH1cblxuICAvKipcbiAgICogU2lnbnMgYW4gYXJiaXRyYXJ5IHBheWxvYWQgd2l0aCB0aGUgdXNlciBrZXkgb24gdGhpcyB0cmFkaW5nIGFjY291bnRcbiAgICogQHBhcmFtIHBhcmFtc1xuICAgKiBAcGFyYW0gcGFyYW1zLnBheWxvYWQgYXJiaXRyYXJ5IHBheWxvYWQgb2JqZWN0IChzdHJpbmcgfCBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPilcbiAgICogQHBhcmFtIHBhcmFtcy53YWxsZXRQYXNzcGhyYXNlIHBhc3NwaHJhc2Ugb24gdGhpcyB0cmFkaW5nIGFjY291bnQsIHVzZWQgdG8gdW5sb2NrIHRoZSBhY2NvdW50IHVzZXIga2V5XG4gICAqIEByZXR1cm5zIGhleC1lbmNvZGVkIHNpZ25hdHVyZSBvZiB0aGUgcGF5bG9hZFxuICAgKi9cbiAgYXN5bmMgc2lnblBheWxvYWQocGFyYW1zOiBTaWduUGF5bG9hZFBhcmFtZXRlcnMpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGNvbnN0IGtleSA9IChhd2FpdCB0aGlzLndhbGxldC5iYXNlQ29pbi5rZXljaGFpbnMoKS5nZXQoeyBpZDogdGhpcy53YWxsZXQua2V5SWRzKClbMF0gfSkpIGFzIGFueTtcbiAgICBjb25zdCBwcnYgPSB0aGlzLndhbGxldC5iaXRnby5kZWNyeXB0KHtcbiAgICAgIGlucHV0OiBrZXkuZW5jcnlwdGVkUHJ2LFxuICAgICAgcGFzc3dvcmQ6IHBhcmFtcy53YWxsZXRQYXNzcGhyYXNlLFxuICAgIH0pO1xuICAgIGNvbnN0IHBheWxvYWQgPSB0eXBlb2YgcGFyYW1zLnBheWxvYWQgPT09ICdzdHJpbmcnID8gcGFyYW1zLnBheWxvYWQgOiBKU09OLnN0cmluZ2lmeShwYXJhbXMucGF5bG9hZCk7XG4gICAgcmV0dXJuICgoYXdhaXQgdGhpcy53YWxsZXQuYmFzZUNvaW4uc2lnbk1lc3NhZ2UoeyBwcnYgfSwgcGF5bG9hZCkpIGFzIGFueSkudG9TdHJpbmcoJ2hleCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBUcmFkZSBOZXR3b3JrXG4gICAqIFRvIGVuYWJsZSBPZmYgRXhjaGFuZ2UgQWxsb2NhdGlvbiAmIFNldHRsZW1lbnQsIGNvbnRhY3Qgc3VwcG9ydEBiaXRnby5jb20uXG4gICAqIEJpdEdvIHByb3ZpZGVzIGEgVUkgZXhwZXJpZW5jZSBmb3IgY2xpZW50cyBhdDogaHR0cHM6Ly9hcHAuYml0Z28uY29tL3dlYi9lbnRlcnByaXNlcy88ZW50ZXJwcmlzZUlkPi9hbGxvY2F0ZVxuICAgKi9cbiAgdG9OZXR3b3JrKCk6IFRyYWRpbmdOZXR3b3JrIHtcbiAgICByZXR1cm4gbmV3IFRyYWRpbmdOZXR3b3JrKHRoaXMuZW50ZXJwcmlzZUlkLCB0aGlzLndhbGxldCwgdGhpcy5iaXRnbyk7XG4gIH1cbn1cbiJdfQ==
|