@bitgo-beta/abstract-utxo 1.1.1-beta.232 → 1.1.1-beta.2321
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/README.md +76 -0
- package/dist/cjs/src/abstractUtxoCoin.d.ts +466 -0
- package/dist/cjs/src/abstractUtxoCoin.d.ts.map +1 -0
- package/dist/cjs/src/abstractUtxoCoin.js +644 -0
- package/dist/cjs/src/address/fixedScript.d.ts +44 -0
- package/dist/cjs/src/address/fixedScript.d.ts.map +1 -0
- package/dist/cjs/src/address/fixedScript.js +109 -0
- package/dist/cjs/src/address/index.d.ts +2 -0
- package/dist/cjs/src/address/index.d.ts.map +1 -0
- package/dist/cjs/src/address/index.js +8 -0
- package/dist/cjs/src/config.d.ts.map +1 -0
- package/dist/cjs/src/config.js +14 -0
- package/dist/cjs/src/deriveKeyWithSeed.d.ts +12 -0
- package/dist/cjs/src/deriveKeyWithSeed.d.ts.map +1 -0
- package/dist/cjs/src/deriveKeyWithSeed.js +17 -0
- package/dist/cjs/src/descriptor/NamedDescriptor.d.ts +19 -0
- package/dist/cjs/src/descriptor/NamedDescriptor.d.ts.map +1 -0
- package/dist/cjs/src/descriptor/NamedDescriptor.js +77 -0
- package/dist/cjs/src/descriptor/assertDescriptorWalletAddress.d.ts +5 -0
- package/dist/cjs/src/descriptor/assertDescriptorWalletAddress.d.ts.map +1 -0
- package/dist/cjs/src/descriptor/assertDescriptorWalletAddress.js +32 -0
- package/dist/cjs/src/descriptor/builder/builder.d.ts +17 -0
- package/dist/cjs/src/descriptor/builder/builder.d.ts.map +1 -0
- package/dist/cjs/src/descriptor/builder/builder.js +54 -0
- package/dist/cjs/src/descriptor/builder/index.d.ts +3 -0
- package/dist/cjs/src/descriptor/builder/index.d.ts.map +1 -0
- package/dist/cjs/src/descriptor/builder/index.js +8 -0
- package/dist/cjs/src/descriptor/builder/parse.d.ts +5 -0
- package/dist/cjs/src/descriptor/builder/parse.d.ts.map +1 -0
- package/dist/cjs/src/descriptor/builder/parse.js +148 -0
- package/dist/cjs/src/descriptor/createWallet/createDescriptorWallet.d.ts +20 -0
- package/dist/cjs/src/descriptor/createWallet/createDescriptorWallet.d.ts.map +1 -0
- package/dist/cjs/src/descriptor/createWallet/createDescriptorWallet.js +41 -0
- package/dist/cjs/src/descriptor/createWallet/createDescriptors.d.ts +12 -0
- package/dist/cjs/src/descriptor/createWallet/createDescriptors.d.ts.map +1 -0
- package/dist/cjs/src/descriptor/createWallet/createDescriptors.js +33 -0
- package/dist/cjs/src/descriptor/createWallet/index.d.ts +3 -0
- package/dist/cjs/src/descriptor/createWallet/index.d.ts.map +1 -0
- package/dist/cjs/src/descriptor/createWallet/index.js +19 -0
- package/dist/cjs/src/descriptor/descriptorWallet.d.ts +19 -0
- package/dist/cjs/src/descriptor/descriptorWallet.d.ts.map +1 -0
- package/dist/cjs/src/descriptor/descriptorWallet.js +54 -0
- package/dist/cjs/src/descriptor/index.d.ts +9 -0
- package/dist/cjs/src/descriptor/index.d.ts.map +1 -0
- package/dist/cjs/src/descriptor/index.js +53 -0
- package/dist/cjs/src/descriptor/validatePolicy.d.ts +22 -0
- package/dist/cjs/src/descriptor/validatePolicy.d.ts.map +1 -0
- package/dist/cjs/src/descriptor/validatePolicy.js +94 -0
- package/dist/cjs/src/impl/bch/bch.d.ts +36 -0
- package/dist/cjs/src/impl/bch/bch.d.ts.map +1 -0
- package/dist/cjs/src/impl/bch/bch.js +67 -0
- package/dist/cjs/src/impl/bch/index.d.ts +3 -0
- package/dist/cjs/src/impl/bch/index.d.ts.map +1 -0
- package/dist/cjs/src/impl/bch/index.js +19 -0
- package/dist/cjs/src/impl/bch/tbch.d.ts +12 -0
- package/dist/cjs/src/impl/bch/tbch.d.ts.map +1 -0
- package/dist/cjs/src/impl/bch/tbch.js +15 -0
- package/dist/cjs/src/impl/bcha/bcha.d.ts +9 -0
- package/dist/cjs/src/impl/bcha/bcha.d.ts.map +1 -0
- package/dist/cjs/src/impl/bcha/bcha.js +15 -0
- package/dist/cjs/src/impl/bcha/index.d.ts +3 -0
- package/dist/cjs/src/impl/bcha/index.d.ts.map +1 -0
- package/dist/cjs/src/impl/bcha/index.js +19 -0
- package/dist/cjs/src/impl/bcha/tbcha.d.ts +12 -0
- package/dist/cjs/src/impl/bcha/tbcha.d.ts.map +1 -0
- package/dist/cjs/src/impl/bcha/tbcha.js +15 -0
- package/dist/cjs/src/impl/bsv/bsv.d.ts +9 -0
- package/dist/cjs/src/impl/bsv/bsv.d.ts.map +1 -0
- package/dist/cjs/src/impl/bsv/bsv.js +15 -0
- package/dist/cjs/src/impl/bsv/index.d.ts +3 -0
- package/dist/cjs/src/impl/bsv/index.d.ts.map +1 -0
- package/dist/cjs/src/impl/bsv/index.js +19 -0
- package/dist/cjs/src/impl/bsv/tbsv.d.ts +12 -0
- package/dist/cjs/src/impl/bsv/tbsv.d.ts.map +1 -0
- package/dist/cjs/src/impl/bsv/tbsv.js +15 -0
- package/dist/cjs/src/impl/btc/btc.d.ts +15 -0
- package/dist/cjs/src/impl/btc/btc.d.ts.map +1 -0
- package/dist/cjs/src/impl/btc/btc.js +22 -0
- package/dist/cjs/src/impl/btc/index.d.ts +10 -0
- package/dist/cjs/src/impl/btc/index.d.ts.map +1 -0
- package/dist/cjs/src/impl/btc/index.js +26 -0
- package/dist/cjs/src/impl/btc/inscriptionBuilder.d.ts +61 -0
- package/dist/cjs/src/impl/btc/inscriptionBuilder.d.ts.map +1 -0
- package/dist/cjs/src/impl/btc/inscriptionBuilder.js +170 -0
- package/dist/cjs/src/impl/btc/tbtc.d.ts +12 -0
- package/dist/cjs/src/impl/btc/tbtc.d.ts.map +1 -0
- package/dist/cjs/src/impl/btc/tbtc.js +15 -0
- package/dist/cjs/src/impl/btc/tbtc4.d.ts +12 -0
- package/dist/cjs/src/impl/btc/tbtc4.d.ts.map +1 -0
- package/dist/cjs/src/impl/btc/tbtc4.js +15 -0
- package/dist/cjs/src/impl/btc/tbtcbgsig.d.ts +12 -0
- package/dist/cjs/src/impl/btc/tbtcbgsig.d.ts.map +1 -0
- package/dist/cjs/src/impl/btc/tbtcbgsig.js +15 -0
- package/dist/cjs/src/impl/btc/tbtcsig.d.ts +12 -0
- package/dist/cjs/src/impl/btc/tbtcsig.d.ts.map +1 -0
- package/dist/cjs/src/impl/btc/tbtcsig.js +15 -0
- package/dist/cjs/src/impl/btc/tbtcstx.d.ts +10 -0
- package/dist/cjs/src/impl/btc/tbtcstx.d.ts.map +1 -0
- package/dist/cjs/src/impl/btc/tbtcstx.js +18 -0
- package/dist/cjs/src/impl/btc/tbtcstxprivate1.d.ts +9 -0
- package/dist/cjs/src/impl/btc/tbtcstxprivate1.d.ts.map +1 -0
- package/dist/cjs/src/impl/btc/tbtcstxprivate1.js +15 -0
- package/dist/cjs/src/impl/btc/tbtcstxsignet.d.ts +10 -0
- package/dist/cjs/src/impl/btc/tbtcstxsignet.d.ts.map +1 -0
- package/dist/cjs/src/impl/btc/tbtcstxsignet.js +18 -0
- package/dist/cjs/src/impl/btg/btg.d.ts +9 -0
- package/dist/cjs/src/impl/btg/btg.d.ts.map +1 -0
- package/dist/cjs/src/impl/btg/btg.js +15 -0
- package/dist/cjs/src/impl/btg/index.d.ts +2 -0
- package/dist/cjs/src/impl/btg/index.d.ts.map +1 -0
- package/dist/cjs/src/impl/btg/index.js +18 -0
- package/dist/cjs/src/impl/dash/dash.d.ts +9 -0
- package/dist/cjs/src/impl/dash/dash.d.ts.map +1 -0
- package/dist/cjs/src/impl/dash/dash.js +15 -0
- package/dist/cjs/src/impl/dash/index.d.ts +3 -0
- package/dist/cjs/src/impl/dash/index.d.ts.map +1 -0
- package/dist/cjs/src/impl/dash/index.js +19 -0
- package/dist/cjs/src/impl/dash/tdash.d.ts +12 -0
- package/dist/cjs/src/impl/dash/tdash.d.ts.map +1 -0
- package/dist/cjs/src/impl/dash/tdash.js +15 -0
- package/dist/cjs/src/impl/doge/doge.d.ts +33 -0
- package/dist/cjs/src/impl/doge/doge.d.ts.map +1 -0
- package/dist/cjs/src/impl/doge/doge.js +76 -0
- package/dist/cjs/src/impl/doge/index.d.ts +3 -0
- package/dist/cjs/src/impl/doge/index.d.ts.map +1 -0
- package/dist/cjs/src/impl/doge/index.js +19 -0
- package/dist/cjs/src/impl/doge/tdoge.d.ts +12 -0
- package/dist/cjs/src/impl/doge/tdoge.d.ts.map +1 -0
- package/dist/cjs/src/impl/doge/tdoge.js +15 -0
- package/dist/cjs/src/impl/index.d.ts +11 -0
- package/dist/cjs/src/impl/index.d.ts.map +1 -0
- package/dist/cjs/src/impl/index.js +47 -0
- package/dist/cjs/src/impl/ltc/index.d.ts +3 -0
- package/dist/cjs/src/impl/ltc/index.d.ts.map +1 -0
- package/dist/cjs/src/impl/ltc/index.js +19 -0
- package/dist/cjs/src/impl/ltc/ltc.d.ts +8 -0
- package/dist/cjs/src/impl/ltc/ltc.d.ts.map +1 -0
- package/dist/cjs/src/impl/ltc/ltc.js +15 -0
- package/dist/cjs/src/impl/ltc/tltc.d.ts +8 -0
- package/dist/cjs/src/impl/ltc/tltc.d.ts.map +1 -0
- package/dist/cjs/src/impl/ltc/tltc.js +15 -0
- package/dist/cjs/src/impl/pearl/index.d.ts +3 -0
- package/dist/cjs/src/impl/pearl/index.d.ts.map +1 -0
- package/dist/cjs/src/impl/pearl/index.js +19 -0
- package/dist/cjs/src/impl/pearl/pearl.d.ts +17 -0
- package/dist/cjs/src/impl/pearl/pearl.d.ts.map +1 -0
- package/dist/cjs/src/impl/pearl/pearl.js +24 -0
- package/dist/cjs/src/impl/pearl/tpearl.d.ts +8 -0
- package/dist/cjs/src/impl/pearl/tpearl.d.ts.map +1 -0
- package/dist/cjs/src/impl/pearl/tpearl.js +15 -0
- package/dist/cjs/src/impl/zec/address.d.ts +79 -0
- package/dist/cjs/src/impl/zec/address.d.ts.map +1 -0
- package/dist/cjs/src/impl/zec/address.js +157 -0
- package/dist/cjs/src/impl/zec/index.d.ts +7 -0
- package/dist/cjs/src/impl/zec/index.d.ts.map +1 -0
- package/dist/cjs/src/impl/zec/index.js +23 -0
- package/dist/cjs/src/impl/zec/recipients.d.ts +86 -0
- package/dist/cjs/src/impl/zec/recipients.d.ts.map +1 -0
- package/dist/cjs/src/impl/zec/recipients.js +98 -0
- package/dist/cjs/src/impl/zec/shieldedAddress.d.ts +36 -0
- package/dist/cjs/src/impl/zec/shieldedAddress.d.ts.map +1 -0
- package/dist/cjs/src/impl/zec/shieldedAddress.js +51 -0
- package/dist/cjs/src/impl/zec/signIronwoodTransaction.d.ts +29 -0
- package/dist/cjs/src/impl/zec/signIronwoodTransaction.d.ts.map +1 -0
- package/dist/cjs/src/impl/zec/signIronwoodTransaction.js +57 -0
- package/dist/cjs/src/impl/zec/types.d.ts +8 -0
- package/dist/cjs/src/impl/zec/types.d.ts.map +1 -0
- package/dist/cjs/src/impl/zec/types.js +3 -0
- package/dist/cjs/src/impl/zec/tzec.d.ts +9 -0
- package/dist/cjs/src/impl/zec/tzec.d.ts.map +1 -0
- package/dist/cjs/src/impl/zec/tzec.js +15 -0
- package/dist/cjs/src/impl/zec/zec.d.ts +58 -0
- package/dist/cjs/src/impl/zec/zec.d.ts.map +1 -0
- package/dist/cjs/src/impl/zec/zec.js +124 -0
- package/dist/cjs/src/index.d.ts +23 -0
- package/dist/cjs/src/index.d.ts.map +1 -0
- package/dist/cjs/src/index.js +62 -0
- package/dist/cjs/src/keychains.d.ts +55 -0
- package/dist/cjs/src/keychains.d.ts.map +1 -0
- package/dist/cjs/src/keychains.js +143 -0
- package/dist/cjs/src/names.d.ts +16 -0
- package/dist/cjs/src/names.d.ts.map +1 -0
- package/dist/cjs/src/names.js +119 -0
- package/dist/cjs/src/offlineVault/OfflineVaultHalfSigned.d.ts +9 -0
- package/dist/cjs/src/offlineVault/OfflineVaultHalfSigned.d.ts.map +1 -0
- package/dist/cjs/src/offlineVault/OfflineVaultHalfSigned.js +22 -0
- package/dist/cjs/src/offlineVault/OfflineVaultSignable.d.ts +46 -0
- package/dist/cjs/src/offlineVault/OfflineVaultSignable.d.ts.map +1 -0
- package/dist/cjs/src/offlineVault/OfflineVaultSignable.js +55 -0
- package/dist/cjs/src/offlineVault/TransactionExplanation.d.ts +16 -0
- package/dist/cjs/src/offlineVault/TransactionExplanation.d.ts.map +1 -0
- package/dist/cjs/src/offlineVault/TransactionExplanation.js +15 -0
- package/dist/cjs/src/offlineVault/descriptor/index.d.ts +2 -0
- package/dist/cjs/src/offlineVault/descriptor/index.d.ts.map +1 -0
- package/dist/cjs/src/offlineVault/descriptor/index.js +18 -0
- package/dist/cjs/src/offlineVault/descriptor/transaction.d.ts +39 -0
- package/dist/cjs/src/offlineVault/descriptor/transaction.d.ts.map +1 -0
- package/dist/cjs/src/offlineVault/descriptor/transaction.js +80 -0
- package/dist/cjs/src/offlineVault/index.d.ts +6 -0
- package/dist/cjs/src/offlineVault/index.d.ts.map +1 -0
- package/dist/cjs/src/offlineVault/index.js +44 -0
- package/dist/{src → cjs/src}/recovery/RecoveryProvider.d.ts +1 -3
- package/dist/cjs/src/recovery/RecoveryProvider.d.ts.map +1 -0
- package/dist/cjs/src/recovery/RecoveryProvider.js +22 -0
- package/dist/cjs/src/recovery/backupKeyRecovery.d.ts +176 -0
- package/dist/cjs/src/recovery/backupKeyRecovery.d.ts.map +1 -0
- package/dist/cjs/src/recovery/backupKeyRecovery.js +417 -0
- package/dist/{src → cjs/src}/recovery/baseApi.d.ts +3 -6
- package/dist/cjs/src/recovery/baseApi.d.ts.map +1 -0
- package/dist/cjs/src/recovery/baseApi.js +73 -0
- package/dist/{src → cjs/src}/recovery/coingeckoApi.d.ts +0 -3
- package/dist/cjs/src/recovery/coingeckoApi.d.ts.map +1 -0
- package/dist/cjs/src/recovery/coingeckoApi.js +44 -0
- package/dist/{src → cjs/src}/recovery/crossChainRecovery.d.ts +21 -9
- package/dist/cjs/src/recovery/crossChainRecovery.d.ts.map +1 -0
- package/dist/cjs/src/recovery/crossChainRecovery.js +302 -0
- package/dist/{src → cjs/src}/recovery/index.d.ts +0 -1
- package/dist/cjs/src/recovery/index.d.ts.map +1 -0
- package/dist/{src → cjs/src}/recovery/index.js +6 -3
- package/dist/cjs/src/recovery/mempoolApi.d.ts.map +1 -0
- package/dist/cjs/src/recovery/mempoolApi.js +36 -0
- package/dist/cjs/src/recovery/psbt.d.ts +68 -0
- package/dist/cjs/src/recovery/psbt.d.ts.map +1 -0
- package/dist/cjs/src/recovery/psbt.js +160 -0
- package/dist/cjs/src/tnumber.d.ts +4 -0
- package/dist/cjs/src/tnumber.d.ts.map +1 -0
- package/dist/cjs/src/tnumber.js +12 -0
- package/dist/cjs/src/transaction/bip322.d.ts +27 -0
- package/dist/cjs/src/transaction/bip322.d.ts.map +1 -0
- package/dist/cjs/src/transaction/bip322.js +139 -0
- package/dist/cjs/src/transaction/common/verifyPayGoAmount.d.ts +2 -0
- package/dist/cjs/src/transaction/common/verifyPayGoAmount.d.ts.map +1 -0
- package/dist/cjs/src/transaction/common/verifyPayGoAmount.js +3 -0
- package/dist/cjs/src/transaction/decode.d.ts +21 -0
- package/dist/cjs/src/transaction/decode.d.ts.map +1 -0
- package/dist/cjs/src/transaction/decode.js +46 -0
- package/dist/cjs/src/transaction/descriptor/explainPsbt.d.ts +5 -0
- package/dist/cjs/src/transaction/descriptor/explainPsbt.d.ts.map +1 -0
- package/dist/cjs/src/transaction/descriptor/explainPsbt.js +48 -0
- package/dist/cjs/src/transaction/descriptor/index.d.ts +7 -0
- package/dist/cjs/src/transaction/descriptor/index.d.ts.map +1 -0
- package/dist/cjs/src/transaction/descriptor/index.js +14 -0
- package/dist/cjs/src/transaction/descriptor/parse.d.ts +18 -0
- package/dist/cjs/src/transaction/descriptor/parse.d.ts.map +1 -0
- package/dist/cjs/src/transaction/descriptor/parse.js +85 -0
- package/dist/cjs/src/transaction/descriptor/parseToAmountType.d.ts +15 -0
- package/dist/cjs/src/transaction/descriptor/parseToAmountType.d.ts.map +1 -0
- package/dist/cjs/src/transaction/descriptor/parseToAmountType.js +60 -0
- package/dist/cjs/src/transaction/descriptor/recipient.d.ts +5 -0
- package/dist/cjs/src/transaction/descriptor/recipient.d.ts.map +1 -0
- package/dist/cjs/src/transaction/descriptor/recipient.js +3 -0
- package/dist/cjs/src/transaction/descriptor/signPsbt.d.ts +25 -0
- package/dist/cjs/src/transaction/descriptor/signPsbt.d.ts.map +1 -0
- package/dist/cjs/src/transaction/descriptor/signPsbt.js +44 -0
- package/dist/cjs/src/transaction/descriptor/verifyTransaction.d.ts +36 -0
- package/dist/cjs/src/transaction/descriptor/verifyTransaction.d.ts.map +1 -0
- package/dist/cjs/src/transaction/descriptor/verifyTransaction.js +90 -0
- package/dist/cjs/src/transaction/explainTransaction.d.ts +19 -0
- package/dist/cjs/src/transaction/explainTransaction.d.ts.map +1 -0
- package/dist/cjs/src/transaction/explainTransaction.js +85 -0
- package/dist/cjs/src/transaction/fixedScript/SigningError.d.ts +24 -0
- package/dist/cjs/src/transaction/fixedScript/SigningError.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/SigningError.js +32 -0
- package/dist/cjs/src/transaction/fixedScript/explainPsbtWasm.d.ts +47 -0
- package/dist/cjs/src/transaction/fixedScript/explainPsbtWasm.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/explainPsbtWasm.js +152 -0
- package/dist/cjs/src/transaction/fixedScript/explainTransaction.d.ts +47 -0
- package/dist/cjs/src/transaction/fixedScript/explainTransaction.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/explainTransaction.js +3 -0
- package/dist/cjs/src/transaction/fixedScript/index.d.ts +8 -0
- package/dist/cjs/src/transaction/fixedScript/index.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/index.js +30 -0
- package/dist/cjs/src/transaction/fixedScript/musig2.d.ts +4 -0
- package/dist/cjs/src/transaction/fixedScript/musig2.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/musig2.js +3 -0
- package/dist/cjs/src/transaction/fixedScript/parseOutput.d.ts +30 -0
- package/dist/cjs/src/transaction/fixedScript/parseOutput.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/parseOutput.js +217 -0
- package/dist/cjs/src/transaction/fixedScript/parseTransaction.d.ts +9 -0
- package/dist/cjs/src/transaction/fixedScript/parseTransaction.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/parseTransaction.js +234 -0
- package/dist/cjs/src/transaction/fixedScript/replayProtection.d.ts +10 -0
- package/dist/cjs/src/transaction/fixedScript/replayProtection.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/replayProtection.js +44 -0
- package/dist/cjs/src/transaction/fixedScript/signPsbtWasm.d.ts +27 -0
- package/dist/cjs/src/transaction/fixedScript/signPsbtWasm.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/signPsbtWasm.js +130 -0
- package/dist/cjs/src/transaction/fixedScript/signTransaction.d.ts +31 -0
- package/dist/cjs/src/transaction/fixedScript/signTransaction.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/signTransaction.js +55 -0
- package/dist/cjs/src/transaction/fixedScript/verifyTransaction.d.ts +21 -0
- package/dist/cjs/src/transaction/fixedScript/verifyTransaction.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/verifyTransaction.js +182 -0
- package/dist/cjs/src/transaction/getPayGoVerificationPubkey.d.ts +9 -0
- package/dist/cjs/src/transaction/getPayGoVerificationPubkey.d.ts.map +1 -0
- package/dist/cjs/src/transaction/getPayGoVerificationPubkey.js +20 -0
- package/dist/cjs/src/transaction/index.d.ts +9 -0
- package/dist/cjs/src/transaction/index.d.ts.map +1 -0
- package/dist/cjs/src/transaction/index.js +52 -0
- package/dist/cjs/src/transaction/outputDifference.d.ts +44 -0
- package/dist/cjs/src/transaction/outputDifference.d.ts.map +1 -0
- package/dist/cjs/src/transaction/outputDifference.js +51 -0
- package/dist/cjs/src/transaction/parseTransaction.d.ts +5 -0
- package/dist/cjs/src/transaction/parseTransaction.d.ts.map +1 -0
- package/dist/cjs/src/transaction/parseTransaction.js +48 -0
- package/dist/cjs/src/transaction/recipient.d.ts +76 -0
- package/dist/cjs/src/transaction/recipient.d.ts.map +1 -0
- package/dist/cjs/src/transaction/recipient.js +130 -0
- package/dist/cjs/src/transaction/signTransaction.d.ts +18 -0
- package/dist/cjs/src/transaction/signTransaction.d.ts.map +1 -0
- package/dist/cjs/src/transaction/signTransaction.js +114 -0
- package/dist/cjs/src/transaction/types.d.ts +47 -0
- package/dist/cjs/src/transaction/types.d.ts.map +1 -0
- package/dist/cjs/src/transaction/types.js +3 -0
- package/dist/cjs/src/transaction/verifyTransaction.d.ts +5 -0
- package/dist/cjs/src/transaction/verifyTransaction.d.ts.map +1 -0
- package/dist/cjs/src/transaction/verifyTransaction.js +50 -0
- package/dist/cjs/src/unspent.d.ts +59 -0
- package/dist/cjs/src/unspent.d.ts.map +1 -0
- package/dist/cjs/src/unspent.js +20 -0
- package/dist/cjs/src/verifyKey.d.ts +22 -0
- package/dist/cjs/src/verifyKey.d.ts.map +1 -0
- package/dist/cjs/src/verifyKey.js +110 -0
- package/dist/cjs/src/wallet.d.ts +15 -0
- package/dist/cjs/src/wallet.d.ts.map +1 -0
- package/dist/cjs/src/wallet.js +8 -0
- package/dist/cjs/test/integration/impl/bch/bch.d.ts +2 -0
- package/dist/cjs/test/integration/impl/bch/bch.d.ts.map +1 -0
- package/dist/cjs/test/integration/impl/bch/bch.js +76 -0
- package/dist/cjs/test/unit/address.d.ts +2 -0
- package/dist/cjs/test/unit/address.d.ts.map +1 -0
- package/dist/cjs/test/unit/address.js +201 -0
- package/dist/cjs/test/unit/bip322.d.ts +2 -0
- package/dist/cjs/test/unit/bip322.d.ts.map +1 -0
- package/dist/cjs/test/unit/bip322.js +491 -0
- package/dist/cjs/test/unit/buildSignSendLegacyFormat.d.ts +2 -0
- package/dist/cjs/test/unit/buildSignSendLegacyFormat.d.ts.map +1 -0
- package/dist/cjs/test/unit/buildSignSendLegacyFormat.js +102 -0
- package/dist/cjs/test/unit/coins.d.ts +2 -0
- package/dist/cjs/test/unit/coins.d.ts.map +1 -0
- package/dist/cjs/test/unit/coins.js +161 -0
- package/dist/cjs/test/unit/customChangeWallet.d.ts +2 -0
- package/dist/cjs/test/unit/customChangeWallet.d.ts.map +1 -0
- package/dist/cjs/test/unit/customChangeWallet.js +206 -0
- package/dist/cjs/test/unit/customChangeWalletFixtures.d.ts +2 -0
- package/dist/cjs/test/unit/customChangeWalletFixtures.d.ts.map +1 -0
- package/dist/cjs/test/unit/customChangeWalletFixtures.js +53 -0
- package/dist/cjs/test/unit/customSigner.d.ts +2 -0
- package/dist/cjs/test/unit/customSigner.d.ts.map +1 -0
- package/dist/cjs/test/unit/customSigner.js +99 -0
- package/dist/cjs/test/unit/deriveKeyWithSeed.d.ts +2 -0
- package/dist/cjs/test/unit/deriveKeyWithSeed.d.ts.map +1 -0
- package/dist/cjs/test/unit/deriveKeyWithSeed.js +56 -0
- package/dist/cjs/test/unit/descriptor/NamedDescriptor.d.ts +2 -0
- package/dist/cjs/test/unit/descriptor/NamedDescriptor.d.ts.map +1 -0
- package/dist/cjs/test/unit/descriptor/NamedDescriptor.js +51 -0
- package/dist/cjs/test/unit/descriptor/builder.d.ts +2 -0
- package/dist/cjs/test/unit/descriptor/builder.d.ts.map +1 -0
- package/dist/cjs/test/unit/descriptor/builder.js +92 -0
- package/dist/cjs/test/unit/descriptor/createWallet/createDescriptors.d.ts +2 -0
- package/dist/cjs/test/unit/descriptor/createWallet/createDescriptors.d.ts.map +1 -0
- package/dist/cjs/test/unit/descriptor/createWallet/createDescriptors.js +53 -0
- package/dist/cjs/test/unit/descriptor/descriptorWallet.d.ts +2 -0
- package/dist/cjs/test/unit/descriptor/descriptorWallet.d.ts.map +1 -0
- package/dist/cjs/test/unit/descriptor/descriptorWallet.js +62 -0
- package/dist/cjs/test/unit/descriptorAddress.d.ts +3 -0
- package/dist/cjs/test/unit/descriptorAddress.d.ts.map +1 -0
- package/dist/cjs/test/unit/descriptorAddress.js +123 -0
- package/dist/cjs/test/unit/explainTransaction.d.ts +2 -0
- package/dist/cjs/test/unit/explainTransaction.d.ts.map +1 -0
- package/dist/cjs/test/unit/explainTransaction.js +37 -0
- package/dist/cjs/test/unit/fixtures/psbtHexProof.d.ts +4 -0
- package/dist/cjs/test/unit/fixtures/psbtHexProof.d.ts.map +1 -0
- package/dist/cjs/test/unit/fixtures/psbtHexProof.js +9 -0
- package/dist/cjs/test/unit/impl/bch/unit/bch.d.ts +2 -0
- package/dist/cjs/test/unit/impl/bch/unit/bch.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/bch/unit/bch.js +79 -0
- package/dist/cjs/test/unit/impl/bcha/unit/index.d.ts +2 -0
- package/dist/cjs/test/unit/impl/bcha/unit/index.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/bcha/unit/index.js +41 -0
- package/dist/cjs/test/unit/impl/bsv/unit/index.d.ts +2 -0
- package/dist/cjs/test/unit/impl/bsv/unit/index.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/bsv/unit/index.js +34 -0
- package/dist/cjs/test/unit/impl/btg/unit/index.d.ts +2 -0
- package/dist/cjs/test/unit/impl/btg/unit/index.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/btg/unit/index.js +33 -0
- package/dist/cjs/test/unit/impl/dash/unit/index.d.ts +2 -0
- package/dist/cjs/test/unit/impl/dash/unit/index.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/dash/unit/index.js +34 -0
- package/dist/cjs/test/unit/impl/doge/unit/index.d.ts +2 -0
- package/dist/cjs/test/unit/impl/doge/unit/index.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/doge/unit/index.js +34 -0
- package/dist/cjs/test/unit/impl/pearl/unit/index.d.ts +2 -0
- package/dist/cjs/test/unit/impl/pearl/unit/index.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/pearl/unit/index.js +111 -0
- package/dist/cjs/test/unit/impl/zec/psbtDecode.d.ts +2 -0
- package/dist/cjs/test/unit/impl/zec/psbtDecode.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/zec/psbtDecode.js +69 -0
- package/dist/cjs/test/unit/impl/zec/shieldedPrebuildAndSign.d.ts +2 -0
- package/dist/cjs/test/unit/impl/zec/shieldedPrebuildAndSign.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/zec/shieldedPrebuildAndSign.js +470 -0
- package/dist/cjs/test/unit/impl/zec/unit/address.d.ts +2 -0
- package/dist/cjs/test/unit/impl/zec/unit/address.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/zec/unit/address.js +227 -0
- package/dist/cjs/test/unit/impl/zec/unit/index.d.ts +2 -0
- package/dist/cjs/test/unit/impl/zec/unit/index.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/zec/unit/index.js +30 -0
- package/dist/cjs/test/unit/impl/zec/unit/resolvePsbtRecipients.d.ts +2 -0
- package/dist/cjs/test/unit/impl/zec/unit/resolvePsbtRecipients.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/zec/unit/resolvePsbtRecipients.js +91 -0
- package/dist/cjs/test/unit/impl/zec/unit/shieldedAddress.d.ts +2 -0
- package/dist/cjs/test/unit/impl/zec/unit/shieldedAddress.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/zec/unit/shieldedAddress.js +57 -0
- package/dist/cjs/test/unit/impl/zec/unit/unifiedRecipientPreference.d.ts +2 -0
- package/dist/cjs/test/unit/impl/zec/unit/unifiedRecipientPreference.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/zec/unit/unifiedRecipientPreference.js +57 -0
- package/dist/cjs/test/unit/keySignatures.d.ts +2 -0
- package/dist/cjs/test/unit/keySignatures.d.ts.map +1 -0
- package/dist/cjs/test/unit/keySignatures.js +54 -0
- package/dist/cjs/test/unit/keychains.d.ts +2 -0
- package/dist/cjs/test/unit/keychains.d.ts.map +1 -0
- package/dist/cjs/test/unit/keychains.js +87 -0
- package/dist/cjs/test/unit/offlineVault/halfSigned.d.ts +2 -0
- package/dist/cjs/test/unit/offlineVault/halfSigned.d.ts.map +1 -0
- package/dist/cjs/test/unit/offlineVault/halfSigned.js +124 -0
- package/dist/cjs/test/unit/parseTransaction.d.ts +2 -0
- package/dist/cjs/test/unit/parseTransaction.d.ts.map +1 -0
- package/dist/cjs/test/unit/parseTransaction.js +155 -0
- package/dist/cjs/test/unit/pendingApprovalTxHexPsbt.d.ts +2 -0
- package/dist/cjs/test/unit/pendingApprovalTxHexPsbt.d.ts.map +1 -0
- package/dist/cjs/test/unit/pendingApprovalTxHexPsbt.js +99 -0
- package/dist/cjs/test/unit/postProcessPrebuild.d.ts +2 -0
- package/dist/cjs/test/unit/postProcessPrebuild.d.ts.map +1 -0
- package/dist/cjs/test/unit/postProcessPrebuild.js +65 -0
- package/dist/cjs/test/unit/prebuildAndSign.d.ts +2 -0
- package/dist/cjs/test/unit/prebuildAndSign.d.ts.map +1 -0
- package/dist/cjs/test/unit/prebuildAndSign.js +218 -0
- package/dist/cjs/test/unit/recovery/backupKeyRecovery.d.ts +2 -0
- package/dist/cjs/test/unit/recovery/backupKeyRecovery.d.ts.map +1 -0
- package/dist/cjs/test/unit/recovery/backupKeyRecovery.js +149 -0
- package/dist/cjs/test/unit/recovery/backupKeyRecoveryUnspentGathering.d.ts +2 -0
- package/dist/cjs/test/unit/recovery/backupKeyRecoveryUnspentGathering.d.ts.map +1 -0
- package/dist/cjs/test/unit/recovery/backupKeyRecoveryUnspentGathering.js +147 -0
- package/dist/cjs/test/unit/recovery/crossChainRecovery.d.ts +2 -0
- package/dist/cjs/test/unit/recovery/crossChainRecovery.d.ts.map +1 -0
- package/dist/cjs/test/unit/recovery/crossChainRecovery.js +352 -0
- package/dist/cjs/test/unit/recovery/formatBackupKeyRecoveryResult.d.ts +2 -0
- package/dist/cjs/test/unit/recovery/formatBackupKeyRecoveryResult.d.ts.map +1 -0
- package/dist/cjs/test/unit/recovery/formatBackupKeyRecoveryResult.js +189 -0
- package/dist/cjs/test/unit/recovery/mock.d.ts +37 -0
- package/dist/cjs/test/unit/recovery/mock.d.ts.map +1 -0
- package/dist/cjs/test/unit/recovery/mock.js +113 -0
- package/dist/cjs/test/unit/signTransaction.d.ts +2 -0
- package/dist/cjs/test/unit/signTransaction.d.ts.map +1 -0
- package/dist/cjs/test/unit/signTransaction.js +223 -0
- package/dist/cjs/test/unit/tbtcstx.d.ts +2 -0
- package/dist/cjs/test/unit/tbtcstx.d.ts.map +1 -0
- package/dist/cjs/test/unit/tbtcstx.js +60 -0
- package/dist/cjs/test/unit/tbtcstxprivate1.d.ts +2 -0
- package/dist/cjs/test/unit/tbtcstxprivate1.d.ts.map +1 -0
- package/dist/cjs/test/unit/tbtcstxprivate1.js +61 -0
- package/dist/cjs/test/unit/tbtcstxsignet.d.ts +2 -0
- package/dist/cjs/test/unit/tbtcstxsignet.d.ts.map +1 -0
- package/dist/cjs/test/unit/tbtcstxsignet.js +61 -0
- package/dist/cjs/test/unit/testSpoofTransaction.d.ts +2 -0
- package/dist/cjs/test/unit/testSpoofTransaction.d.ts.map +1 -0
- package/dist/cjs/test/unit/testSpoofTransaction.js +114 -0
- package/dist/cjs/test/unit/transaction/addressCodec.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/addressCodec.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/addressCodec.js +30 -0
- package/dist/cjs/test/unit/transaction/descriptor/explainPsbt.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/descriptor/explainPsbt.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/descriptor/explainPsbt.js +64 -0
- package/dist/cjs/test/unit/transaction/descriptor/fixtures.utils.d.ts +6 -0
- package/dist/cjs/test/unit/transaction/descriptor/fixtures.utils.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/descriptor/fixtures.utils.js +51 -0
- package/dist/cjs/test/unit/transaction/descriptor/parse.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/descriptor/parse.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/descriptor/parse.js +140 -0
- package/dist/cjs/test/unit/transaction/descriptor/sign.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/descriptor/sign.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/descriptor/sign.js +76 -0
- package/dist/cjs/test/unit/transaction/descriptor/signTransactionE2E.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/descriptor/signTransactionE2E.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/descriptor/signTransactionE2E.js +100 -0
- package/dist/cjs/test/unit/transaction/descriptor/signTransactionGuard.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/descriptor/signTransactionGuard.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/descriptor/signTransactionGuard.js +84 -0
- package/dist/cjs/test/unit/transaction/descriptor/validatePolicy.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/descriptor/validatePolicy.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/descriptor/validatePolicy.js +81 -0
- package/dist/cjs/test/unit/transaction/descriptor/verifyTransactionQr.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/descriptor/verifyTransactionQr.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/descriptor/verifyTransactionQr.js +103 -0
- package/dist/cjs/test/unit/transaction/fixedScript/explainPsbt.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/fixedScript/explainPsbt.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/fixedScript/explainPsbt.js +179 -0
- package/dist/cjs/test/unit/transaction/fixedScript/parsePsbt.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/fixedScript/parsePsbt.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/fixedScript/parsePsbt.js +223 -0
- package/dist/cjs/test/unit/transaction/fixedScript/replayProtection.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/fixedScript/replayProtection.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/fixedScript/replayProtection.js +60 -0
- package/dist/cjs/test/unit/transaction/fixedScript/signPsbt.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/fixedScript/signPsbt.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/fixedScript/signPsbt.js +98 -0
- package/dist/cjs/test/unit/transaction/outputDifference.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/outputDifference.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/outputDifference.js +117 -0
- package/dist/cjs/test/unit/transaction/recipient.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/recipient.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/recipient.js +52 -0
- package/dist/cjs/test/unit/transaction.d.ts +2 -0
- package/dist/cjs/test/unit/transaction.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction.js +301 -0
- package/dist/cjs/test/unit/txFormat.d.ts +30 -0
- package/dist/cjs/test/unit/txFormat.d.ts.map +1 -0
- package/dist/cjs/test/unit/txFormat.js +161 -0
- package/dist/cjs/test/unit/util/address.d.ts +14 -0
- package/dist/cjs/test/unit/util/address.d.ts.map +1 -0
- package/dist/cjs/test/unit/util/address.js +16 -0
- package/dist/cjs/test/unit/util/assert.d.ts +3 -0
- package/dist/cjs/test/unit/util/assert.d.ts.map +1 -0
- package/dist/cjs/test/unit/util/assert.js +24 -0
- package/dist/cjs/test/unit/util/fixtures.d.ts +13 -0
- package/dist/cjs/test/unit/util/fixtures.d.ts.map +1 -0
- package/dist/cjs/test/unit/util/fixtures.js +105 -0
- package/dist/cjs/test/unit/util/index.d.ts +11 -0
- package/dist/cjs/test/unit/util/index.d.ts.map +1 -0
- package/dist/cjs/test/unit/util/index.js +27 -0
- package/dist/cjs/test/unit/util/keychains.d.ts +55 -0
- package/dist/cjs/test/unit/util/keychains.d.ts.map +1 -0
- package/dist/cjs/test/unit/util/keychains.js +122 -0
- package/dist/cjs/test/unit/util/nockBitGo.d.ts +10 -0
- package/dist/cjs/test/unit/util/nockBitGo.d.ts.map +1 -0
- package/dist/cjs/test/unit/util/nockBitGo.js +27 -0
- package/dist/cjs/test/unit/util/nockIndexerAPI.d.ts +8 -0
- package/dist/cjs/test/unit/util/nockIndexerAPI.d.ts.map +1 -0
- package/dist/cjs/test/unit/util/nockIndexerAPI.js +22 -0
- package/dist/cjs/test/unit/util/psbt.d.ts +19 -0
- package/dist/cjs/test/unit/util/psbt.d.ts.map +1 -0
- package/dist/cjs/test/unit/util/psbt.js +21 -0
- package/dist/cjs/test/unit/util/transaction.d.ts +28 -0
- package/dist/cjs/test/unit/util/transaction.d.ts.map +1 -0
- package/dist/cjs/test/unit/util/transaction.js +132 -0
- package/dist/cjs/test/unit/util/unspents.d.ts +71 -0
- package/dist/cjs/test/unit/util/unspents.d.ts.map +1 -0
- package/dist/cjs/test/unit/util/unspents.js +224 -0
- package/dist/cjs/test/unit/util/utxoCoins.d.ts +30 -0
- package/dist/cjs/test/unit/util/utxoCoins.d.ts.map +1 -0
- package/dist/cjs/test/unit/util/utxoCoins.js +159 -0
- package/dist/cjs/test/unit/util/wallet.d.ts +4 -0
- package/dist/cjs/test/unit/util/wallet.d.ts.map +1 -0
- package/dist/cjs/test/unit/util/wallet.js +9 -0
- package/dist/cjs/test/unit/verifyTransaction.d.ts +2 -0
- package/dist/cjs/test/unit/verifyTransaction.d.ts.map +1 -0
- package/dist/cjs/test/unit/verifyTransaction.js +539 -0
- package/dist/cjs/test/unit/wallet.d.ts +2 -0
- package/dist/cjs/test/unit/wallet.d.ts.map +1 -0
- package/dist/cjs/test/unit/wallet.js +251 -0
- package/dist/cjs/test/unit/webauthn.d.ts +2 -0
- package/dist/cjs/test/unit/webauthn.d.ts.map +1 -0
- package/dist/cjs/test/unit/webauthn.js +77 -0
- package/dist/cjs/tsconfig.tsbuildinfo +1 -0
- package/dist/esm/abstractUtxoCoin.d.ts +466 -0
- package/dist/esm/abstractUtxoCoin.d.ts.map +1 -0
- package/dist/esm/abstractUtxoCoin.js +636 -0
- package/dist/esm/address/fixedScript.d.ts +44 -0
- package/dist/esm/address/fixedScript.d.ts.map +1 -0
- package/dist/esm/address/fixedScript.js +101 -0
- package/dist/esm/address/index.d.ts +2 -0
- package/dist/esm/address/index.d.ts.map +1 -0
- package/dist/esm/address/index.js +2 -0
- package/dist/esm/config.d.ts +9 -0
- package/dist/esm/config.js +11 -0
- package/dist/esm/deriveKeyWithSeed.d.ts +12 -0
- package/dist/esm/deriveKeyWithSeed.d.ts.map +1 -0
- package/dist/esm/deriveKeyWithSeed.js +14 -0
- package/dist/esm/descriptor/NamedDescriptor.d.ts +19 -0
- package/dist/esm/descriptor/NamedDescriptor.d.ts.map +1 -0
- package/dist/esm/descriptor/NamedDescriptor.js +37 -0
- package/dist/esm/descriptor/assertDescriptorWalletAddress.d.ts +5 -0
- package/dist/esm/descriptor/assertDescriptorWalletAddress.d.ts.map +1 -0
- package/dist/esm/descriptor/assertDescriptorWalletAddress.js +26 -0
- package/dist/esm/descriptor/builder/builder.d.ts +17 -0
- package/dist/esm/descriptor/builder/builder.d.ts.map +1 -0
- package/dist/esm/descriptor/builder/builder.js +51 -0
- package/dist/esm/descriptor/builder/index.d.ts +3 -0
- package/dist/esm/descriptor/builder/index.d.ts.map +1 -0
- package/dist/esm/descriptor/builder/index.js +3 -0
- package/dist/esm/descriptor/builder/parse.d.ts +5 -0
- package/dist/esm/descriptor/builder/parse.d.ts.map +1 -0
- package/dist/esm/descriptor/builder/parse.js +144 -0
- package/dist/esm/descriptor/createWallet/createDescriptorWallet.d.ts +20 -0
- package/dist/esm/descriptor/createWallet/createDescriptorWallet.d.ts.map +1 -0
- package/dist/esm/descriptor/createWallet/createDescriptorWallet.js +37 -0
- package/dist/esm/descriptor/createWallet/createDescriptors.d.ts +12 -0
- package/dist/esm/descriptor/createWallet/createDescriptors.d.ts.map +1 -0
- package/dist/esm/descriptor/createWallet/createDescriptors.js +29 -0
- package/dist/esm/descriptor/createWallet/index.d.ts +3 -0
- package/dist/esm/descriptor/createWallet/index.d.ts.map +1 -0
- package/dist/esm/descriptor/createWallet/index.js +3 -0
- package/dist/esm/descriptor/descriptorWallet.d.ts +19 -0
- package/dist/esm/descriptor/descriptorWallet.d.ts.map +1 -0
- package/dist/esm/descriptor/descriptorWallet.js +16 -0
- package/dist/esm/descriptor/index.d.ts +9 -0
- package/dist/esm/descriptor/index.d.ts.map +1 -0
- package/dist/esm/descriptor/index.js +7 -0
- package/dist/esm/descriptor/validatePolicy.d.ts +22 -0
- package/dist/esm/descriptor/validatePolicy.d.ts.map +1 -0
- package/dist/esm/descriptor/validatePolicy.js +82 -0
- package/dist/esm/impl/bch/bch.d.ts +36 -0
- package/dist/esm/impl/bch/bch.d.ts.map +1 -0
- package/dist/esm/impl/bch/bch.js +63 -0
- package/dist/esm/impl/bch/index.d.ts +3 -0
- package/dist/esm/impl/bch/index.d.ts.map +1 -0
- package/dist/esm/impl/bch/index.js +3 -0
- package/dist/esm/impl/bch/tbch.d.ts +12 -0
- package/dist/esm/impl/bch/tbch.d.ts.map +1 -0
- package/dist/esm/impl/bch/tbch.js +11 -0
- package/dist/esm/impl/bcha/bcha.d.ts +9 -0
- package/dist/esm/impl/bcha/bcha.d.ts.map +1 -0
- package/dist/esm/impl/bcha/bcha.js +11 -0
- package/dist/esm/impl/bcha/index.d.ts +3 -0
- package/dist/esm/impl/bcha/index.d.ts.map +1 -0
- package/dist/esm/impl/bcha/index.js +3 -0
- package/dist/esm/impl/bcha/tbcha.d.ts +12 -0
- package/dist/esm/impl/bcha/tbcha.d.ts.map +1 -0
- package/dist/esm/impl/bcha/tbcha.js +11 -0
- package/dist/esm/impl/bsv/bsv.d.ts +9 -0
- package/dist/esm/impl/bsv/bsv.d.ts.map +1 -0
- package/dist/esm/impl/bsv/bsv.js +11 -0
- package/dist/esm/impl/bsv/index.d.ts +3 -0
- package/dist/esm/impl/bsv/index.d.ts.map +1 -0
- package/dist/esm/impl/bsv/index.js +3 -0
- package/dist/esm/impl/bsv/tbsv.d.ts +12 -0
- package/dist/esm/impl/bsv/tbsv.d.ts.map +1 -0
- package/dist/esm/impl/bsv/tbsv.js +11 -0
- package/dist/esm/impl/btc/btc.d.ts +15 -0
- package/dist/esm/impl/btc/btc.d.ts.map +1 -0
- package/dist/esm/impl/btc/btc.js +18 -0
- package/dist/esm/impl/btc/index.d.ts +10 -0
- package/dist/esm/impl/btc/index.d.ts.map +1 -0
- package/dist/esm/impl/btc/index.js +10 -0
- package/dist/esm/impl/btc/inscriptionBuilder.d.ts +61 -0
- package/dist/esm/impl/btc/inscriptionBuilder.d.ts.map +1 -0
- package/dist/esm/impl/btc/inscriptionBuilder.js +163 -0
- package/dist/esm/impl/btc/tbtc.d.ts +12 -0
- package/dist/esm/impl/btc/tbtc.d.ts.map +1 -0
- package/dist/esm/impl/btc/tbtc.js +11 -0
- package/dist/esm/impl/btc/tbtc4.d.ts +12 -0
- package/dist/esm/impl/btc/tbtc4.d.ts.map +1 -0
- package/dist/esm/impl/btc/tbtc4.js +11 -0
- package/dist/esm/impl/btc/tbtcbgsig.d.ts +12 -0
- package/dist/esm/impl/btc/tbtcbgsig.d.ts.map +1 -0
- package/dist/esm/impl/btc/tbtcbgsig.js +11 -0
- package/dist/esm/impl/btc/tbtcsig.d.ts +12 -0
- package/dist/esm/impl/btc/tbtcsig.d.ts.map +1 -0
- package/dist/esm/impl/btc/tbtcsig.js +11 -0
- package/dist/esm/impl/btc/tbtcstx.d.ts +10 -0
- package/dist/esm/impl/btc/tbtcstx.d.ts.map +1 -0
- package/dist/esm/impl/btc/tbtcstx.js +14 -0
- package/dist/esm/impl/btc/tbtcstxprivate1.d.ts +9 -0
- package/dist/esm/impl/btc/tbtcstxprivate1.d.ts.map +1 -0
- package/dist/esm/impl/btc/tbtcstxprivate1.js +11 -0
- package/dist/esm/impl/btc/tbtcstxsignet.d.ts +10 -0
- package/dist/esm/impl/btc/tbtcstxsignet.d.ts.map +1 -0
- package/dist/esm/impl/btc/tbtcstxsignet.js +14 -0
- package/dist/esm/impl/btg/btg.d.ts +9 -0
- package/dist/esm/impl/btg/btg.d.ts.map +1 -0
- package/dist/esm/impl/btg/btg.js +11 -0
- package/dist/esm/impl/btg/index.d.ts +2 -0
- package/dist/esm/impl/btg/index.d.ts.map +1 -0
- package/dist/esm/impl/btg/index.js +2 -0
- package/dist/esm/impl/dash/dash.d.ts +9 -0
- package/dist/esm/impl/dash/dash.d.ts.map +1 -0
- package/dist/esm/impl/dash/dash.js +11 -0
- package/dist/esm/impl/dash/index.d.ts +3 -0
- package/dist/esm/impl/dash/index.d.ts.map +1 -0
- package/dist/esm/impl/dash/index.js +3 -0
- package/dist/esm/impl/dash/tdash.d.ts +12 -0
- package/dist/esm/impl/dash/tdash.d.ts.map +1 -0
- package/dist/esm/impl/dash/tdash.js +11 -0
- package/dist/esm/impl/doge/doge.d.ts +33 -0
- package/dist/esm/impl/doge/doge.d.ts.map +1 -0
- package/dist/esm/impl/doge/doge.js +72 -0
- package/dist/esm/impl/doge/index.d.ts +3 -0
- package/dist/esm/impl/doge/index.d.ts.map +1 -0
- package/dist/esm/impl/doge/index.js +3 -0
- package/dist/esm/impl/doge/tdoge.d.ts +12 -0
- package/dist/esm/impl/doge/tdoge.d.ts.map +1 -0
- package/dist/esm/impl/doge/tdoge.js +11 -0
- package/dist/esm/impl/index.d.ts +11 -0
- package/dist/esm/impl/index.d.ts.map +1 -0
- package/dist/esm/impl/index.js +11 -0
- package/dist/esm/impl/ltc/index.d.ts +3 -0
- package/dist/esm/impl/ltc/index.d.ts.map +1 -0
- package/dist/esm/impl/ltc/index.js +3 -0
- package/dist/esm/impl/ltc/ltc.d.ts +8 -0
- package/dist/esm/impl/ltc/ltc.d.ts.map +1 -0
- package/dist/esm/impl/ltc/ltc.js +11 -0
- package/dist/esm/impl/ltc/tltc.d.ts +8 -0
- package/dist/esm/impl/ltc/tltc.d.ts.map +1 -0
- package/dist/esm/impl/ltc/tltc.js +11 -0
- package/dist/esm/impl/pearl/index.d.ts +3 -0
- package/dist/esm/impl/pearl/index.d.ts.map +1 -0
- package/dist/esm/impl/pearl/index.js +3 -0
- package/dist/esm/impl/pearl/pearl.d.ts +17 -0
- package/dist/esm/impl/pearl/pearl.d.ts.map +1 -0
- package/dist/esm/impl/pearl/pearl.js +20 -0
- package/dist/esm/impl/pearl/tpearl.d.ts +8 -0
- package/dist/esm/impl/pearl/tpearl.d.ts.map +1 -0
- package/dist/esm/impl/pearl/tpearl.js +11 -0
- package/dist/esm/impl/zec/address.d.ts +79 -0
- package/dist/esm/impl/zec/address.d.ts.map +1 -0
- package/dist/esm/impl/zec/address.js +150 -0
- package/dist/esm/impl/zec/index.d.ts +7 -0
- package/dist/esm/impl/zec/index.d.ts.map +1 -0
- package/dist/esm/impl/zec/index.js +7 -0
- package/dist/esm/impl/zec/recipients.d.ts +86 -0
- package/dist/esm/impl/zec/recipients.d.ts.map +1 -0
- package/dist/esm/impl/zec/recipients.js +94 -0
- package/dist/esm/impl/zec/shieldedAddress.d.ts +36 -0
- package/dist/esm/impl/zec/shieldedAddress.d.ts.map +1 -0
- package/dist/esm/impl/zec/shieldedAddress.js +48 -0
- package/dist/esm/impl/zec/signIronwoodTransaction.d.ts +29 -0
- package/dist/esm/impl/zec/signIronwoodTransaction.d.ts.map +1 -0
- package/dist/esm/impl/zec/signIronwoodTransaction.js +50 -0
- package/dist/esm/impl/zec/types.d.ts +8 -0
- package/dist/esm/impl/zec/types.d.ts.map +1 -0
- package/dist/esm/impl/zec/types.js +2 -0
- package/dist/esm/impl/zec/tzec.d.ts +9 -0
- package/dist/esm/impl/zec/tzec.d.ts.map +1 -0
- package/dist/esm/impl/zec/tzec.js +11 -0
- package/dist/esm/impl/zec/zec.d.ts +58 -0
- package/dist/esm/impl/zec/zec.d.ts.map +1 -0
- package/dist/esm/impl/zec/zec.js +117 -0
- package/dist/esm/index.d.ts +23 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +23 -0
- package/dist/esm/keychains.d.ts +55 -0
- package/dist/esm/keychains.d.ts.map +1 -0
- package/dist/esm/keychains.js +98 -0
- package/dist/esm/names.d.ts +16 -0
- package/dist/esm/names.d.ts.map +1 -0
- package/dist/esm/names.js +108 -0
- package/dist/esm/offlineVault/OfflineVaultHalfSigned.d.ts +9 -0
- package/dist/esm/offlineVault/OfflineVaultHalfSigned.d.ts.map +1 -0
- package/dist/esm/offlineVault/OfflineVaultHalfSigned.js +19 -0
- package/dist/esm/offlineVault/OfflineVaultSignable.d.ts +46 -0
- package/dist/esm/offlineVault/OfflineVaultSignable.d.ts.map +1 -0
- package/dist/esm/offlineVault/OfflineVaultSignable.js +18 -0
- package/dist/esm/offlineVault/TransactionExplanation.d.ts +16 -0
- package/dist/esm/offlineVault/TransactionExplanation.d.ts.map +1 -0
- package/dist/esm/offlineVault/TransactionExplanation.js +12 -0
- package/dist/esm/offlineVault/descriptor/index.d.ts +2 -0
- package/dist/esm/offlineVault/descriptor/index.d.ts.map +1 -0
- package/dist/esm/offlineVault/descriptor/index.js +2 -0
- package/dist/esm/offlineVault/descriptor/transaction.d.ts +39 -0
- package/dist/esm/offlineVault/descriptor/transaction.d.ts.map +1 -0
- package/dist/esm/offlineVault/descriptor/transaction.js +41 -0
- package/dist/esm/offlineVault/index.d.ts +6 -0
- package/dist/esm/offlineVault/index.d.ts.map +1 -0
- package/dist/esm/offlineVault/index.js +4 -0
- package/dist/esm/recovery/RecoveryProvider.d.ts +20 -0
- package/dist/esm/recovery/RecoveryProvider.d.ts.map +1 -0
- package/dist/esm/recovery/RecoveryProvider.js +19 -0
- package/dist/esm/recovery/backupKeyRecovery.d.ts +176 -0
- package/dist/esm/recovery/backupKeyRecovery.d.ts.map +1 -0
- package/dist/esm/recovery/backupKeyRecovery.js +406 -0
- package/dist/esm/recovery/baseApi.d.ts +24 -0
- package/dist/esm/recovery/baseApi.d.ts.map +1 -0
- package/dist/esm/recovery/baseApi.js +64 -0
- package/dist/esm/recovery/coingeckoApi.d.ts +6 -0
- package/dist/esm/recovery/coingeckoApi.d.ts.map +1 -0
- package/dist/esm/recovery/coingeckoApi.js +40 -0
- package/dist/esm/recovery/crossChainRecovery.d.ts +97 -0
- package/dist/esm/recovery/crossChainRecovery.d.ts.map +1 -0
- package/dist/esm/recovery/crossChainRecovery.js +295 -0
- package/dist/esm/recovery/index.d.ts +7 -0
- package/dist/{src → esm}/recovery/index.d.ts.map +1 -1
- package/dist/esm/recovery/index.js +7 -0
- package/dist/esm/recovery/mempoolApi.d.ts +7 -0
- package/dist/{src → esm}/recovery/mempoolApi.d.ts.map +1 -1
- package/dist/esm/recovery/mempoolApi.js +29 -0
- package/dist/esm/recovery/psbt.d.ts +68 -0
- package/dist/esm/recovery/psbt.d.ts.map +1 -0
- package/dist/esm/recovery/psbt.js +152 -0
- package/dist/esm/tnumber.d.ts +4 -0
- package/dist/esm/tnumber.d.ts.map +1 -0
- package/dist/esm/tnumber.js +9 -0
- package/dist/esm/transaction/bip322.d.ts +27 -0
- package/dist/esm/transaction/bip322.d.ts.map +1 -0
- package/dist/esm/transaction/bip322.js +100 -0
- package/dist/esm/transaction/common/verifyPayGoAmount.d.ts +1 -0
- package/dist/esm/transaction/common/verifyPayGoAmount.d.ts.map +1 -0
- package/dist/esm/transaction/common/verifyPayGoAmount.js +1 -0
- package/dist/esm/transaction/decode.d.ts +21 -0
- package/dist/esm/transaction/decode.d.ts.map +1 -0
- package/dist/esm/transaction/decode.js +40 -0
- package/dist/esm/transaction/descriptor/explainPsbt.d.ts +5 -0
- package/dist/esm/transaction/descriptor/explainPsbt.d.ts.map +1 -0
- package/dist/esm/transaction/descriptor/explainPsbt.js +45 -0
- package/dist/esm/transaction/descriptor/index.d.ts +7 -0
- package/dist/esm/transaction/descriptor/index.d.ts.map +1 -0
- package/dist/esm/transaction/descriptor/index.js +6 -0
- package/dist/esm/transaction/descriptor/parse.d.ts +18 -0
- package/dist/esm/transaction/descriptor/parse.d.ts.map +1 -0
- package/dist/esm/transaction/descriptor/parse.js +81 -0
- package/dist/esm/transaction/descriptor/parseToAmountType.d.ts +15 -0
- package/dist/esm/transaction/descriptor/parseToAmountType.d.ts.map +1 -0
- package/dist/esm/transaction/descriptor/parseToAmountType.js +55 -0
- package/dist/esm/transaction/descriptor/recipient.d.ts +5 -0
- package/dist/esm/transaction/descriptor/recipient.d.ts.map +1 -0
- package/dist/esm/transaction/descriptor/recipient.js +2 -0
- package/dist/esm/transaction/descriptor/signPsbt.d.ts +25 -0
- package/dist/esm/transaction/descriptor/signPsbt.d.ts.map +1 -0
- package/dist/esm/transaction/descriptor/signPsbt.js +39 -0
- package/dist/esm/transaction/descriptor/verifyTransaction.d.ts +36 -0
- package/dist/esm/transaction/descriptor/verifyTransaction.d.ts.map +1 -0
- package/dist/esm/transaction/descriptor/verifyTransaction.js +80 -0
- package/dist/esm/transaction/explainTransaction.d.ts +19 -0
- package/dist/esm/transaction/explainTransaction.d.ts.map +1 -0
- package/dist/esm/transaction/explainTransaction.js +49 -0
- package/dist/esm/transaction/fixedScript/SigningError.d.ts +24 -0
- package/dist/esm/transaction/fixedScript/SigningError.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/SigningError.js +26 -0
- package/dist/esm/transaction/fixedScript/explainPsbtWasm.d.ts +47 -0
- package/dist/esm/transaction/fixedScript/explainPsbtWasm.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/explainPsbtWasm.js +147 -0
- package/dist/esm/transaction/fixedScript/explainTransaction.d.ts +47 -0
- package/dist/esm/transaction/fixedScript/explainTransaction.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/explainTransaction.js +2 -0
- package/dist/esm/transaction/fixedScript/index.d.ts +8 -0
- package/dist/esm/transaction/fixedScript/index.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/index.js +7 -0
- package/dist/esm/transaction/fixedScript/musig2.d.ts +4 -0
- package/dist/esm/transaction/fixedScript/musig2.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/musig2.js +2 -0
- package/dist/esm/transaction/fixedScript/parseOutput.d.ts +30 -0
- package/dist/esm/transaction/fixedScript/parseOutput.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/parseOutput.js +210 -0
- package/dist/esm/transaction/fixedScript/parseTransaction.d.ts +9 -0
- package/dist/esm/transaction/fixedScript/parseTransaction.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/parseTransaction.js +228 -0
- package/dist/esm/transaction/fixedScript/replayProtection.d.ts +10 -0
- package/dist/esm/transaction/fixedScript/replayProtection.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/replayProtection.js +38 -0
- package/dist/esm/transaction/fixedScript/signPsbtWasm.d.ts +27 -0
- package/dist/esm/transaction/fixedScript/signPsbtWasm.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/signPsbtWasm.js +121 -0
- package/dist/esm/transaction/fixedScript/signTransaction.d.ts +31 -0
- package/dist/esm/transaction/fixedScript/signTransaction.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/signTransaction.js +47 -0
- package/dist/esm/transaction/fixedScript/verifyTransaction.d.ts +21 -0
- package/dist/esm/transaction/fixedScript/verifyTransaction.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/verifyTransaction.js +176 -0
- package/dist/esm/transaction/getPayGoVerificationPubkey.d.ts +9 -0
- package/dist/esm/transaction/getPayGoVerificationPubkey.d.ts.map +1 -0
- package/dist/esm/transaction/getPayGoVerificationPubkey.js +17 -0
- package/dist/esm/transaction/index.d.ts +9 -0
- package/dist/esm/transaction/index.d.ts.map +1 -0
- package/dist/esm/transaction/index.js +9 -0
- package/dist/esm/transaction/outputDifference.d.ts +44 -0
- package/dist/esm/transaction/outputDifference.d.ts.map +1 -0
- package/dist/esm/transaction/outputDifference.js +45 -0
- package/dist/esm/transaction/parseTransaction.d.ts +5 -0
- package/dist/esm/transaction/parseTransaction.d.ts.map +1 -0
- package/dist/esm/transaction/parseTransaction.js +12 -0
- package/dist/esm/transaction/recipient.d.ts +76 -0
- package/dist/esm/transaction/recipient.d.ts.map +1 -0
- package/dist/esm/transaction/recipient.js +120 -0
- package/dist/esm/transaction/signTransaction.d.ts +18 -0
- package/dist/esm/transaction/signTransaction.d.ts.map +1 -0
- package/dist/esm/transaction/signTransaction.js +73 -0
- package/dist/esm/transaction/types.d.ts +47 -0
- package/dist/esm/transaction/types.d.ts.map +1 -0
- package/dist/esm/transaction/types.js +2 -0
- package/dist/esm/transaction/verifyTransaction.d.ts +5 -0
- package/dist/esm/transaction/verifyTransaction.d.ts.map +1 -0
- package/dist/esm/transaction/verifyTransaction.js +14 -0
- package/dist/esm/unspent.d.ts +59 -0
- package/dist/esm/unspent.d.ts.map +1 -0
- package/dist/esm/unspent.js +15 -0
- package/dist/esm/verifyKey.d.ts +22 -0
- package/dist/esm/verifyKey.d.ts.map +1 -0
- package/dist/esm/verifyKey.js +102 -0
- package/dist/esm/wallet.d.ts +15 -0
- package/dist/esm/wallet.d.ts.map +1 -0
- package/dist/esm/wallet.js +5 -0
- package/package.json +49 -20
- package/.eslintignore +0 -5
- package/CHANGELOG.md +0 -253
- package/dist/src/abstractUtxoCoin.d.ts +0 -392
- package/dist/src/abstractUtxoCoin.d.ts.map +0 -1
- package/dist/src/abstractUtxoCoin.js +0 -931
- package/dist/src/config.js +0 -14
- package/dist/src/index.d.ts +0 -6
- package/dist/src/index.d.ts.map +0 -1
- package/dist/src/index.js +0 -18
- package/dist/src/parseOutput.d.ts +0 -22
- package/dist/src/parseOutput.d.ts.map +0 -1
- package/dist/src/parseOutput.js +0 -181
- package/dist/src/recovery/RecoveryProvider.d.ts.map +0 -1
- package/dist/src/recovery/RecoveryProvider.js +0 -24
- package/dist/src/recovery/backupKeyRecovery.d.ts +0 -62
- package/dist/src/recovery/backupKeyRecovery.d.ts.map +0 -1
- package/dist/src/recovery/backupKeyRecovery.js +0 -293
- package/dist/src/recovery/baseApi.d.ts.map +0 -1
- package/dist/src/recovery/baseApi.js +0 -73
- package/dist/src/recovery/coingeckoApi.d.ts.map +0 -1
- package/dist/src/recovery/coingeckoApi.js +0 -47
- package/dist/src/recovery/crossChainRecovery.d.ts.map +0 -1
- package/dist/src/recovery/crossChainRecovery.js +0 -294
- package/dist/src/recovery/mempoolApi.js +0 -33
- package/dist/src/recovery/smartbitApi.d.ts +0 -11
- package/dist/src/recovery/smartbitApi.d.ts.map +0 -1
- package/dist/src/recovery/smartbitApi.js +0 -36
- package/dist/src/replayProtection.d.ts +0 -4
- package/dist/src/replayProtection.d.ts.map +0 -1
- package/dist/src/replayProtection.js +0 -21
- package/dist/src/sign.d.ts +0 -31
- package/dist/src/sign.d.ts.map +0 -1
- package/dist/src/sign.js +0 -104
- package/dist/tsconfig.tsbuildinfo +0 -8213
- /package/dist/{src → cjs/src}/config.d.ts +0 -0
- /package/dist/{src → cjs/src}/recovery/mempoolApi.d.ts +0 -0
- /package/dist/{src → esm}/config.d.ts.map +0 -0
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
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);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
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
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.getDescriptorAddress = getDescriptorAddress;
|
|
37
|
+
const assert = __importStar(require("node:assert"));
|
|
38
|
+
const wasm_utxo_1 = require("@bitgo/wasm-utxo");
|
|
39
|
+
const testutils = __importStar(require("@bitgo/wasm-utxo/testutils"));
|
|
40
|
+
const src_1 = require("../../src");
|
|
41
|
+
const btc_1 = require("../../src/impl/btc");
|
|
42
|
+
const util_1 = require("./util");
|
|
43
|
+
function getDescriptorAddress(d, index, coinName) {
|
|
44
|
+
const derivedScript = src_1.descriptor.Descriptor.fromString(d, 'derivable').atDerivationIndex(index).scriptPubkey();
|
|
45
|
+
return wasm_utxo_1.address.fromOutputScriptWithCoin(derivedScript, coinName);
|
|
46
|
+
}
|
|
47
|
+
class RegtestTbtc extends btc_1.Tbtc {
|
|
48
|
+
constructor() {
|
|
49
|
+
super(util_1.defaultBitGo);
|
|
50
|
+
}
|
|
51
|
+
get wasmName() {
|
|
52
|
+
return 'tbtcreg';
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
describe('descriptor wallets', function () {
|
|
56
|
+
const coin = (0, util_1.getUtxoCoin)('tbtc');
|
|
57
|
+
const xpubs = testutils.getKeyTriple('setec astronomy').map((k) => k.neutered().toBase58());
|
|
58
|
+
function withChecksum(descriptor) {
|
|
59
|
+
return src_1.descriptor.Descriptor.fromString(descriptor, 'derivable').toString();
|
|
60
|
+
}
|
|
61
|
+
function getNamedDescriptor2Of2(name, a, b) {
|
|
62
|
+
return {
|
|
63
|
+
name,
|
|
64
|
+
value: withChecksum(`sh(multi(2,${a}/*,${b}/*))`),
|
|
65
|
+
signatures: [],
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
function getIWalletWithDescriptors(descriptors) {
|
|
69
|
+
return {
|
|
70
|
+
coinSpecific() {
|
|
71
|
+
return { descriptors };
|
|
72
|
+
},
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
const descFoo = getNamedDescriptor2Of2('foo', xpubs[0], xpubs[1]);
|
|
76
|
+
const descBar = getNamedDescriptor2Of2('bar', xpubs[1], xpubs[0]);
|
|
77
|
+
const addressFoo0 = getDescriptorAddress(descFoo.value, 0, coin.wasmName);
|
|
78
|
+
const addressFoo1 = getDescriptorAddress(descFoo.value, 1, coin.wasmName);
|
|
79
|
+
const addressBar0 = getDescriptorAddress(descBar.value, 0, coin.wasmName);
|
|
80
|
+
it('has expected values', function () {
|
|
81
|
+
assert.deepStrictEqual([addressFoo0, addressFoo1, addressBar0], [
|
|
82
|
+
'2N9b1trWxMJN16mTzGJypFn6pEWfXtgh689',
|
|
83
|
+
'2N1YFzj4ECzcjuruaEvSzGaGGH1topMXMXZ',
|
|
84
|
+
'2N9oN5Kc2fLt2MrxEkuQPsy8Fg2KdrFfeKH',
|
|
85
|
+
]);
|
|
86
|
+
});
|
|
87
|
+
function runTestIsAddress(address, index, descriptorName, descriptorChecksum, expected) {
|
|
88
|
+
it(`should return ${expected} for address ${address} with index ${index} and descriptor ${descriptorName} with checksum ${descriptorChecksum}`, async function () {
|
|
89
|
+
const wallet = getIWalletWithDescriptors([descFoo, descBar]);
|
|
90
|
+
async function f() {
|
|
91
|
+
return coin.isWalletAddress({
|
|
92
|
+
address,
|
|
93
|
+
index,
|
|
94
|
+
coinSpecific: { descriptorName, descriptorChecksum },
|
|
95
|
+
keychains: xpubs.map((pub) => ({ pub })),
|
|
96
|
+
}, wallet);
|
|
97
|
+
}
|
|
98
|
+
if (expected === true) {
|
|
99
|
+
assert.equal(await f(), expected);
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
// because isWalletAddress is stupid it actually throws instead of returning false
|
|
103
|
+
await assert.rejects(f, expected);
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
runTestIsAddress(addressFoo0, 0, 'foo', descFoo.value.slice(-8), true);
|
|
108
|
+
runTestIsAddress(addressFoo1, 0, 'foo', descFoo.value.slice(-8), /Address mismatch for descriptor/);
|
|
109
|
+
runTestIsAddress(addressBar0, 0, 'bar', descFoo.value.slice(-8), /Descriptor checksum mismatch/);
|
|
110
|
+
runTestIsAddress(addressFoo0, 0, 'bar', descBar.value.slice(-8), /Address mismatch for descriptor/);
|
|
111
|
+
it('uses the coin address codec for descriptor wallet addresses', async function () {
|
|
112
|
+
const regtestCoin = new RegtestTbtc();
|
|
113
|
+
const address = getDescriptorAddress(descFoo.value, 0, regtestCoin.wasmName);
|
|
114
|
+
const wallet = getIWalletWithDescriptors([descFoo, descBar]);
|
|
115
|
+
assert.strictEqual(await regtestCoin.isWalletAddress({
|
|
116
|
+
address,
|
|
117
|
+
index: 0,
|
|
118
|
+
coinSpecific: { descriptorName: 'foo', descriptorChecksum: descFoo.value.slice(-8) },
|
|
119
|
+
keychains: xpubs.map((pub) => ({ pub })),
|
|
120
|
+
}, wallet), true);
|
|
121
|
+
});
|
|
122
|
+
});
|
|
123
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY3JpcHRvckFkZHJlc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90ZXN0L3VuaXQvZGVzY3JpcHRvckFkZHJlc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFZQSxvREFHQztBQWZELG9EQUFzQztBQUV0QyxnREFBb0U7QUFDcEUsc0VBQXdEO0FBR3hELG1DQUFnRDtBQUNoRCw0Q0FBMEM7QUFHMUMsaUNBQW1EO0FBRW5ELFNBQWdCLG9CQUFvQixDQUFDLENBQVMsRUFBRSxLQUFhLEVBQUUsUUFBa0I7SUFDL0UsTUFBTSxhQUFhLEdBQUcsZ0JBQUssQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxRyxPQUFPLG1CQUFXLENBQUMsd0JBQXdCLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0FBQ3ZFLENBQUM7QUFFRCxNQUFNLFdBQVksU0FBUSxVQUFJO0lBQzVCO1FBQ0UsS0FBSyxDQUFDLG1CQUFZLENBQUMsQ0FBQztJQUN0QixDQUFDO0lBRUQsSUFBYSxRQUFRO1FBQ25CLE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7Q0FDRjtBQUVELFFBQVEsQ0FBQyxvQkFBb0IsRUFBRTtJQUM3QixNQUFNLElBQUksR0FBRyxJQUFBLGtCQUFXLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFDakMsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLFlBQVksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFFNUYsU0FBUyxZQUFZLENBQUMsVUFBa0I7UUFDdEMsT0FBTyxnQkFBSyxDQUFDLFVBQVUsQ0FB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QztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ25vZGU6YXNzZXJ0JztcblxuaW1wb3J0IHsgYWRkcmVzcyBhcyB3YXNtQWRkcmVzcywgQ29pbk5hbWUgfSBmcm9tICdAYml0Z28vd2FzbS11dHhvJztcbmltcG9ydCAqIGFzIHRlc3R1dGlscyBmcm9tICdAYml0Z28vd2FzbS11dHhvL3Rlc3R1dGlscyc7XG5pbXBvcnQgeyBJV2FsbGV0LCBXYWxsZXRDb2luU3BlY2lmaWMgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5cbmltcG9ydCB7IGRlc2NyaXB0b3IgYXMgdXR4b2QgfSBmcm9tICcuLi8uLi9zcmMnO1xuaW1wb3J0IHsgVGJ0YyB9IGZyb20gJy4uLy4uL3NyYy9pbXBsL2J0Yyc7XG5pbXBvcnQgdHlwZSB7IFdhc21VdHhvQ29pbk5hbWUgfSBmcm9tICcuLi8uLi9zcmMvbmFtZXMnO1xuXG5pbXBvcnQgeyBkZWZhdWx0Qml0R28sIGdldFV0eG9Db2luIH0gZnJvbSAnLi91dGlsJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldERlc2NyaXB0b3JBZGRyZXNzKGQ6IHN0cmluZywgaW5kZXg6IG51bWJlciwgY29pbk5hbWU6IENvaW5OYW1lKTogc3RyaW5nIHtcbiAgY29uc3QgZGVyaXZlZFNjcmlwdCA9IHV0eG9kLkRlc2NyaXB0b3IuZnJvbVN0cmluZyhkLCAnZGVyaXZhYmxlJykuYXREZXJpdmF0aW9uSW5kZXgoaW5kZXgpLnNjcmlwdFB1YmtleSgpO1xuICByZXR1cm4gd2FzbUFkZHJlc3MuZnJvbU91dHB1dFNjcmlwdFdpdGhDb2luKGRlcml2ZWRTY3JpcHQsIGNvaW5OYW1lKTtcbn1cblxuY2xhc3MgUmVndGVzdFRidGMgZXh0ZW5kcyBUYnRjIHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoZGVmYXVsdEJpdEdvKTtcbiAgfVxuXG4gIG92ZXJyaWRlIGdldCB3YXNtTmFtZSgpOiBXYXNtVXR4b0NvaW5OYW1lIHtcbiAgICByZXR1cm4gJ3RidGNyZWcnO1xuICB9XG59XG5cbmRlc2NyaWJlKCdkZXNjcmlwdG9yIHdhbGxldHMnLCBmdW5jdGlvbiAoKSB7XG4gIGNvbnN0IGNvaW4gPSBnZXRVdHhvQ29pbigndGJ0YycpO1xuICBjb25zdCB4cHVicyA9IHRlc3R1dGlscy5nZXRLZXlUcmlwbGUoJ3NldGVjIGFzdHJvbm9teScpLm1hcCgoaykgPT4gay5uZXV0ZXJlZCgpLnRvQmFzZTU4KCkpO1xuXG4gIGZ1bmN0aW9uIHdpdGhDaGVja3N1bShkZXNjcmlwdG9yOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB1dHhvZC5EZXNjcmlwdG9yLmZyb21TdHJpbmcoZGVzY3JpcHRvciwgJ2Rlcml2YWJsZScpLnRvU3RyaW5nKCk7XG4gIH1cblxuICBmdW5jdGlvbiBnZXROYW1lZERlc2NyaXB0b3IyT2YyKG5hbWU6IHN0cmluZywgYTogc3RyaW5nLCBiOiBzdHJpbmcpOiB1dHhvZC5OYW1lZERlc2NyaXB0b3Ige1xuICAgIHJldHVybiB7XG4gICAgICBuYW1lLFxuICAgICAgdmFsdWU6IHdpdGhDaGVja3N1bShgc2gobXVsdGkoMiwke2F9LyosJHtifS8qKSlgKSxcbiAgICAgIHNpZ25hdHVyZXM6IFtdLFxuICAgIH07XG4gIH1cblxuICBmdW5jdGlvbiBnZXRJV2FsbGV0V2l0aERlc2NyaXB0b3JzKGRlc2NyaXB0b3JzOiB1dHhvZC5OYW1lZERlc2NyaXB0b3JbXSk6IElXYWxsZXQge1xuICAgIHJldHVybiB7XG4gICAgICBjb2luU3BlY2lmaWMoKSB7XG4gICAgICAgIHJldHVybiB7IGRlc2NyaXB0b3JzIH0gYXMgdW5rbm93biBhcyBXYWxsZXRDb2luU3BlY2lmaWM7XG4gICAgICB9LFxuICAgIH0gYXMgSVdhbGxldDtcbiAgfVxuXG4gIGNvbnN0IGRlc2NGb28gPSBnZXROYW1lZERlc2NyaXB0b3IyT2YyKCdmb28nLCB4cHVic1swXSwgeHB1YnNbMV0pO1xuICBjb25zdCBkZXNjQmFyID0gZ2V0TmFtZWREZXNjcmlwdG9yMk9mMignYmFyJywgeHB1YnNbMV0sIHhwdWJzWzBdKTtcbiAgY29uc3QgYWRkcmVzc0ZvbzAgPSBnZXREZXNjcmlwdG9yQWRkcmVzcyhkZXNjRm9vLnZhbHVlLCAwLCBjb2luLndhc21OYW1lKTtcbiAgY29uc3QgYWRkcmVzc0ZvbzEgPSBnZXREZXNjcmlwdG9yQWRkcmVzcyhkZXNjRm9vLnZhbHVlLCAxLCBjb2luLndhc21OYW1lKTtcbiAgY29uc3QgYWRkcmVzc0JhcjAgPSBnZXREZXNjcmlwdG9yQWRkcmVzcyhkZXNjQmFyLnZhbHVlLCAwLCBjb2luLndhc21OYW1lKTtcblxuICBpdCgnaGFzIGV4cGVjdGVkIHZhbHVlcycsIGZ1bmN0aW9uICgpIHtcbiAgICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKFxuICAgICAgW2FkZHJlc3NGb28wLCBhZGRyZXNzRm9vMSwgYWRkcmVzc0JhcjBdLFxuICAgICAgW1xuICAgICAgICAnMk45YjF0cld4TUpOMTZtVHpHSnlwRm42cEVXZlh0Z2g2ODknLFxuICAgICAgICAnMk4xWUZ6ajRFQ3pjanVydWFFdlN6R2FHR0gxdG9wTVhNWFonLFxuICAgICAgICAnMk45b041S2MyZkx0Mk1yeEVrdVFQc3k4RmcyS2RyRmZlS0gnLFxuICAgICAgXVxuICAgICk7XG4gIH0pO1xuXG4gIGZ1bmN0aW9uIHJ1blRlc3RJc0FkZHJlc3MoXG4gICAgYWRkcmVzczogc3RyaW5nLFxuICAgIGluZGV4OiBudW1iZXIsXG4gICAgZGVzY3JpcHRvck5hbWU6IHN0cmluZyxcbiAgICBkZXNjcmlwdG9yQ2hlY2tzdW06IHN0cmluZyxcbiAgICBleHBlY3RlZDogdHJ1ZSB8IEVycm9yIHwgUmVnRXhwXG4gICkge1xuICAgIGl0KGBzaG91bGQgcmV0dXJuICR7ZXhwZWN0ZWR9IGZvciBhZGRyZXNzICR7YWRkcmVzc30gd2l0aCBpbmRleCAke2luZGV4fSBhbmQgZGVzY3JpcHRvciAke2Rlc2NyaXB0b3JOYW1lfSB3aXRoIGNoZWNrc3VtICR7ZGVzY3JpcHRvckNoZWNrc3VtfWAsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGNvbnN0IHdhbGxldCA9IGdldElXYWxsZXRXaXRoRGVzY3JpcHRvcnMoW2Rlc2NGb28sIGRlc2NCYXJdKTtcbiAgICAgIGFzeW5jIGZ1bmN0aW9uIGYoKSB7XG4gICAgICAgIHJldHVybiBjb2luLmlzV2FsbGV0QWRkcmVzcyhcbiAgICAgICAgICB7XG4gICAgICAgICAgICBhZGRyZXNzLFxuICAgICAgICAgICAgaW5kZXgsXG4gICAgICAgICAgICBjb2luU3BlY2lmaWM6IHsgZGVzY3JpcHRvck5hbWUsIGRlc2NyaXB0b3JDaGVja3N1bSB9LFxuICAgICAgICAgICAga2V5Y2hhaW5zOiB4cHVicy5tYXAoKHB1YikgPT4gKHsgcHViIH0pKSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHdhbGxldFxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgaWYgKGV4cGVjdGVkID09PSB0cnVlKSB7XG4gICAgICAgIGFzc2VydC5lcXVhbChhd2FpdCBmKCksIGV4cGVjdGVkKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIGJlY2F1c2UgaXNXYWxsZXRBZGRyZXNzIGlzIHN0dXBpZCBpdCBhY3R1YWxseSB0aHJvd3MgaW5zdGVhZCBvZiByZXR1cm5pbmcgZmFsc2VcbiAgICAgICAgYXdhaXQgYXNzZXJ0LnJlamVjdHMoZiwgZXhwZWN0ZWQpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcnVuVGVzdElzQWRkcmVzcyhhZGRyZXNzRm9vMCwgMCwgJ2ZvbycsIGRlc2NGb28udmFsdWUuc2xpY2UoLTgpLCB0cnVlKTtcbiAgcnVuVGVzdElzQWRkcmVzcyhhZGRyZXNzRm9vMSwgMCwgJ2ZvbycsIGRlc2NGb28udmFsdWUuc2xpY2UoLTgpLCAvQWRkcmVzcyBtaXNtYXRjaCBmb3IgZGVzY3JpcHRvci8pO1xuICBydW5UZXN0SXNBZGRyZXNzKGFkZHJlc3NCYXIwLCAwLCAnYmFyJywgZGVzY0Zvby52YWx1ZS5zbGljZSgtOCksIC9EZXNjcmlwdG9yIGNoZWNrc3VtIG1pc21hdGNoLyk7XG4gIHJ1blRlc3RJc0FkZHJlc3MoYWRkcmVzc0ZvbzAsIDAsICdiYXInLCBkZXNjQmFyLnZhbHVlLnNsaWNlKC04KSwgL0FkZHJlc3MgbWlzbWF0Y2ggZm9yIGRlc2NyaXB0b3IvKTtcblxuICBpdCgndXNlcyB0aGUgY29pbiBhZGRyZXNzIGNvZGVjIGZvciBkZXNjcmlwdG9yIHdhbGxldCBhZGRyZXNzZXMnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgY29uc3QgcmVndGVzdENvaW4gPSBuZXcgUmVndGVzdFRidGMoKTtcbiAgICBjb25zdCBhZGRyZXNzID0gZ2V0RGVzY3JpcHRvckFkZHJlc3MoZGVzY0Zvby52YWx1ZSwgMCwgcmVndGVzdENvaW4ud2FzbU5hbWUpO1xuICAgIGNvbnN0IHdhbGxldCA9IGdldElXYWxsZXRXaXRoRGVzY3JpcHRvcnMoW2Rlc2NGb28sIGRlc2NCYXJdKTtcblxuICAgIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAgIGF3YWl0IHJlZ3Rlc3RDb2luLmlzV2FsbGV0QWRkcmVzcyhcbiAgICAgICAge1xuICAgICAgICAgIGFkZHJlc3MsXG4gICAgICAgICAgaW5kZXg6IDAsXG4gICAgICAgICAgY29pblNwZWNpZmljOiB7IGRlc2NyaXB0b3JOYW1lOiAnZm9vJywgZGVzY3JpcHRvckNoZWNrc3VtOiBkZXNjRm9vLnZhbHVlLnNsaWNlKC04KSB9LFxuICAgICAgICAgIGtleWNoYWluczogeHB1YnMubWFwKChwdWIpID0+ICh7IHB1YiB9KSksXG4gICAgICAgIH0sXG4gICAgICAgIHdhbGxldFxuICAgICAgKSxcbiAgICAgIHRydWVcbiAgICApO1xuICB9KTtcbn0pO1xuIl19
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"explainTransaction.d.ts","sourceRoot":"","sources":["../../../../test/unit/explainTransaction.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
4
|
+
const nock = require("nock");
|
|
5
|
+
const psbtHexProof_1 = require("./fixtures/psbtHexProof");
|
|
6
|
+
const util_1 = require("./util");
|
|
7
|
+
nock.disableNetConnect();
|
|
8
|
+
const bgUrl = sdk_core_1.common.Environments[util_1.defaultBitGo.getEnv()].uri;
|
|
9
|
+
describe('Explain Transaction', function () {
|
|
10
|
+
afterEach(function () {
|
|
11
|
+
nock.cleanAll();
|
|
12
|
+
});
|
|
13
|
+
describe('Verify paygo output when explaining psbt transaction', function () {
|
|
14
|
+
const coin = (0, util_1.getUtxoCoin)('tbtc4');
|
|
15
|
+
const pubs = [
|
|
16
|
+
'xpub661MyMwAqRbcFaKvNBFdV6HY7ibXxFSbL7rDjY1cVM8s3pGPTNKfjTu8SmatNZ7AcZQehSqcEnC7vezMoprQvhqQUszLhuY4G8ruv6PGEr7',
|
|
17
|
+
'xpub661MyMwAqRbcGkAVVQVHrEYQA4hfbDW9Rpn35b6sXA9TSBd5Qzjwz7F6Weje57kBVeVfimfJjXutwUDBSMz5yRwsWik9gNyxrdvSaJbjgi6',
|
|
18
|
+
'xpub661MyMwAqRbcGCCL3GYNbvKs1t5k5yeKZcV5smto9T5Z17zkcgRF4X9uzDfPxMHHedwF4JcJ6kpg8M2NWHEFC5LMSv1t3nMMm1GC9PcVmq5',
|
|
19
|
+
];
|
|
20
|
+
const keyIds = ['key-user', 'key-backup', 'key-bitgo'];
|
|
21
|
+
function nockKeyFetch() {
|
|
22
|
+
keyIds.forEach((id, i) => {
|
|
23
|
+
nock(bgUrl).get(`/api/v2/${coin.getChain()}/key/${id}`).reply(200, { pub: pubs[i] });
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
it('should detect and verify paygo address proof in PSBT', async function () {
|
|
27
|
+
nockKeyFetch();
|
|
28
|
+
const wallet = new sdk_core_1.Wallet(util_1.defaultBitGo, coin, {
|
|
29
|
+
id: 'mock-wallet-id',
|
|
30
|
+
coin: coin.getChain(),
|
|
31
|
+
keys: keyIds,
|
|
32
|
+
});
|
|
33
|
+
await coin.explainTransaction(psbtHexProof_1.psbtTxHex, wallet);
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
});
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwbGFpblRyYW5zYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdGVzdC91bml0L2V4cGxhaW5UcmFuc2FjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLG1EQUE4RDtBQUM5RCw2QkFBOEI7QUFFOUIsMERBQW9EO0FBQ3BELGlDQUFtRDtBQUVuRCxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztBQUV6QixNQUFNLEtBQUssR0FBRyxpQkFBTSxDQUFDLFlBQVksQ0FBQyxtQkFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDO0FBRTdELFFBQVEsQ0FBQyxxQkFBcUIsRUFBRTtJQUM5QixTQUFTLENBQUM7UUFDUixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEIsQ0FBQyxDQUFDLENBQUM7SUFFSCxRQUFRLENBQUMsc0RBQXNELEVBQUU7UUFDL0QsTUFBTSxJQUFJLEdBQUcsSUFBQSxrQkFBVyxFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRWxDLE1BQU0sSUFBSSxHQUFtQjtZQUMzQixpSEFBaUg7WUFDakgsaUhBQWlIO1lBQ2pILGlIQUFpSDtTQUNsSCxDQUFDO1FBRUYsTUFBTSxNQUFNLEdBQUcsQ0FBQyxVQUFVLEVBQUUsWUFBWSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBRXZELFNBQVMsWUFBWTtZQUNuQixNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFO2dCQUN2QixJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLFdBQVcsSUFBSSxDQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ3ZGLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVELEVBQUUsQ0FBQyxzREFBc0QsRUFBRSxLQUFLO1lBQzlELFlBQVksRUFBRSxDQUFDO1lBQ2YsTUFBTSxNQUFNLEdBQUcsSUFBSSxpQkFBTSxDQUFDLG1CQUFZLEVBQUUsSUFBSSxFQUFFO2dCQUM1QyxFQUFFLEVBQUUsZ0JBQWdCO2dCQUNwQixJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRTtnQkFDckIsSUFBSSxFQUFFLE1BQU07YUFDYixDQUFDLENBQUM7WUFDSCxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyx3QkFBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ25ELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbW1vbiwgVHJpcGxlLCBXYWxsZXQgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgbm9jayA9IHJlcXVpcmUoJ25vY2snKTtcblxuaW1wb3J0IHsgcHNidFR4SGV4IH0gZnJvbSAnLi9maXh0dXJlcy9wc2J0SGV4UHJvb2YnO1xuaW1wb3J0IHsgZGVmYXVsdEJpdEdvLCBnZXRVdHhvQ29pbiB9IGZyb20gJy4vdXRpbCc7XG5cbm5vY2suZGlzYWJsZU5ldENvbm5lY3QoKTtcblxuY29uc3QgYmdVcmwgPSBjb21tb24uRW52aXJvbm1lbnRzW2RlZmF1bHRCaXRHby5nZXRFbnYoKV0udXJpO1xuXG5kZXNjcmliZSgnRXhwbGFpbiBUcmFuc2FjdGlvbicsIGZ1bmN0aW9uICgpIHtcbiAgYWZ0ZXJFYWNoKGZ1bmN0aW9uICgpIHtcbiAgICBub2NrLmNsZWFuQWxsKCk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdWZXJpZnkgcGF5Z28gb3V0cHV0IHdoZW4gZXhwbGFpbmluZyBwc2J0IHRyYW5zYWN0aW9uJywgZnVuY3Rpb24gKCkge1xuICAgIGNvbnN0IGNvaW4gPSBnZXRVdHhvQ29pbigndGJ0YzQnKTtcblxuICAgIGNvbnN0IHB1YnM6IFRyaXBsZTxzdHJpbmc+ID0gW1xuICAgICAgJ3hwdWI2NjFNeU13QXFSYmNGYUt2TkJGZFY2SFk3aWJYeEZTYkw3ckRqWTFjVk04czNwR1BUTktmalR1OFNtYXROWjdBY1pRZWhTcWNFbkM3dmV6TW9wclF2aHFRVXN6TGh1WTRHOHJ1djZQR0VyNycsXG4gICAgICAneHB1YjY2MU15TXdBcVJiY0drQVZWUVZIckVZUUE0aGZiRFc5UnBuMzViNnNYQTlUU0JkNVF6and6N0Y2V2VqZTU3a0JWZVZmaW1mSmpYdXR3VURCU016NXlSd3NXaWs5Z055eHJkdlNhSmJqZ2k2JyxcbiAgICAgICd4cHViNjYxTXlNd0FxUmJjR0NDTDNHWU5idktzMXQ1azV5ZUtaY1Y1c210bzlUNVoxN3prY2dSRjRYOXV6RGZQeE1ISGVkd0Y0SmNKNmtwZzhNMk5XSEVGQzVMTVN2MXQzbk1NbTFHQzlQY1ZtcTUnLFxuICAgIF07XG5cbiAgICBjb25zdCBrZXlJZHMgPSBbJ2tleS11c2VyJywgJ2tleS1iYWNrdXAnLCAna2V5LWJpdGdvJ107XG5cbiAgICBmdW5jdGlvbiBub2NrS2V5RmV0Y2goKTogdm9pZCB7XG4gICAgICBrZXlJZHMuZm9yRWFjaCgoaWQsIGkpID0+IHtcbiAgICAgICAgbm9jayhiZ1VybCkuZ2V0KGAvYXBpL3YyLyR7Y29pbi5nZXRDaGFpbigpfS9rZXkvJHtpZH1gKS5yZXBseSgyMDAsIHsgcHViOiBwdWJzW2ldIH0pO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaXQoJ3Nob3VsZCBkZXRlY3QgYW5kIHZlcmlmeSBwYXlnbyBhZGRyZXNzIHByb29mIGluIFBTQlQnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBub2NrS2V5RmV0Y2goKTtcbiAgICAgIGNvbnN0IHdhbGxldCA9IG5ldyBXYWxsZXQoZGVmYXVsdEJpdEdvLCBjb2luLCB7XG4gICAgICAgIGlkOiAnbW9jay13YWxsZXQtaWQnLFxuICAgICAgICBjb2luOiBjb2luLmdldENoYWluKCksXG4gICAgICAgIGtleXM6IGtleUlkcyxcbiAgICAgIH0pO1xuICAgICAgYXdhaXQgY29pbi5leHBsYWluVHJhbnNhY3Rpb24ocHNidFR4SGV4LCB3YWxsZXQpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"psbtHexProof.d.ts","sourceRoot":"","sources":["../../../../../test/unit/fixtures/psbtHexProof.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS;;CAGrB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.psbtTxHex = void 0;
|
|
4
|
+
// We got this psbt tx hex by getting a test wallet id in test env on wp,
|
|
5
|
+
// called the build-transaction.js in examples/ with the wallet id
|
|
6
|
+
exports.psbtTxHex = {
|
|
7
|
+
txHex: '70736274ff0100b4010000000176e65d40a648da1a3b9412d5b49cc309a37a6a7f3c9cd8b8f1f41a2fbbfd479f0100000000fdffffff03204e0000000000002251206f6b69b20d569b8b14500e3e2e6ba10573d1ce4ddcbc2d0b056219fe27b3ed3beb0d1e00000000002251205f4f20e046cca9808a211ee6e217ca3f9b4023b56e5b5875bccebe414746a2a600127a000000000022002037f34405b83128e4cdecb64f44bff64d0d1b6188d2d656782b136e3488eab1f2000000004f010488b21e00000000000000000067b8325a2303718652d085e2bb65e4c84e8a51eaa4f4ea56e11542290bd27875037cb4cea965ae9d7846addc2a534318a377436864f90a38e2619ca51513cf7a7b0488f255714f010488b21e000000000000000000a5d5ff1d68596719baad5a209925b5edfdc7899ca460a071b3c84bd5bc76b99303f9dc3f6f974f2c90c6d0b7b7c50bc4de49bb8105bfa27223babc909720c6191a043d4b2b964f010488b21e000000000000000000dd32781f8dff65567d76ba1c9485014f7eb07d9527a502cbe0dafb64c20961cd028a55ce3f0c98964dfc6814b1b55b2b77cc31d33a5ae1a994476ce8b20b1618530435eabe8d0001012bd36e980000000000225120866e64ab95028afde6e42cd0dcbd6b38f8dec74d3f3a7648e11259f64075321b0103040000000021163024116333a45124af6141080383eea1b756c1983a07d71d50a2c62d774b7b64150088f25571000000000000000029000000000000002116e5a56ea96f692990ef584ebecaa55acf8d7d4e186db4c489e5498210cc2162df15003d4b2b96000000000000000029000000000000000117201263360542e6b356eaf5c4f03b4af4e0693e169ca7c44207209d3bcc2a3b8f620118208dca1a18f7db9002face5d00d8ebe62ecd0b557a6590b6a2f5686890926bdde548fc05424954474f01866e64ab95028afde6e42cd0dcbd6b38f8dec74d3f3a7648e11259f64075321b1263360542e6b356eaf5c4f03b4af4e0693e169ca7c44207209d3bcc2a3b8f6242033024116333a45124af6141080383eea1b756c1983a07d71d50a2c62d774b7b6402e5a56ea96f692990ef584ebecaa55acf8d7d4e186db4c489e5498210cc2162df0048fc05424954474f04576367473770677a4c556d7036587263684a7169483374326337654a5663546b573959503336586d703258573474344262424336657538504242676a66563934411fd7799767369cfdab6d24bea3a10f3fe18639aba182a1ce6d04242c2795802ff70b60a55f761144622565dcb30317018095af2fa9bf20ff71fd49f8a272ef433b00010520751e929f9b2701a7ae083395f3ccdc26a295bf4b06348d54a330a461ad713f2301068e01c04420165e9a0bcba3fe78e403086052286e24d1a96e04c942f23fd3b407086541d55aad20a7106400ab4a303e360251ac4c0d1ebf73d9f42df2411b383c9675a4899926c0ac01c04420a7106400ab4a303e360251ac4c0d1ebf73d9f42df2411b383c9675a4899926c0ad203abe647510bb3b08087f3025763d8d34b8bdc85d36a91ceaf6289a3466169ba3ac2107165e9a0bcba3fe78e403086052286e24d1a96e04c942f23fd3b407086541d55a3501905217dd2aa5707a9c5ee0476ae4cd0fa56c3a4c01cd832564e4f649a9dea8e888f255710000000000000000290000000f00000021073abe647510bb3b08087f3025763d8d34b8bdc85d36a91ceaf6289a3466169ba335019b06176d0562c9e8007d34dad4b159042cce1a1d7327c42185c050dcf4e6aa963d4b2b960000000000000000290000000f0000002107a7106400ab4a303e360251ac4c0d1ebf73d9f42df2411b383c9675a4899926c05502905217dd2aa5707a9c5ee0476ae4cd0fa56c3a4c01cd832564e4f649a9dea8e89b06176d0562c9e8007d34dad4b159042cce1a1d7327c42185c050dcf4e6aa9635eabe8d0000000000000000290000000f0000000000',
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHNidEhleFByb29mLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdGVzdC91bml0L2ZpeHR1cmVzL3BzYnRIZXhQcm9vZi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx5RUFBeUU7QUFDekUsa0VBQWtFO0FBQ3JELFFBQUEsU0FBUyxHQUFHO0lBQ3ZCLEtBQUssRUFDSCw4ekZBQTh6RjtDQUNqMEYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIFdlIGdvdCB0aGlzIHBzYnQgdHggaGV4IGJ5IGdldHRpbmcgYSB0ZXN0IHdhbGxldCBpZCBpbiB0ZXN0IGVudiBvbiB3cCxcbi8vIGNhbGxlZCB0aGUgYnVpbGQtdHJhbnNhY3Rpb24uanMgaW4gZXhhbXBsZXMvIHdpdGggdGhlIHdhbGxldCBpZFxuZXhwb3J0IGNvbnN0IHBzYnRUeEhleCA9IHtcbiAgdHhIZXg6XG4gICAgJzcwNzM2Mjc0ZmYwMTAwYjQwMTAwMDAwMDAxNzZlNjVkNDBhNjQ4ZGExYTNiOTQxMmQ1YjQ5Y2MzMDlhMzdhNmE3ZjNjOWNkOGI4ZjFmNDFhMmZiYmZkNDc5ZjAxMDAwMDAwMDBmZGZmZmZmZjAzMjA0ZTAwMDAwMDAwMDAwMDIyNTEyMDZmNmI2OWIyMGQ1NjliOGIxNDUwMGUzZTJlNmJhMTA1NzNkMWNlNGRkY2JjMmQwYjA1NjIxOWZlMjdiM2VkM2JlYjBkMWUwMDAwMDAwMDAwMjI1MTIwNWY0ZjIwZTA0NmNjYTk4MDhhMjExZWU2ZTIxN2NhM2Y5YjQwMjNiNTZlNWI1ODc1YmNjZWJlNDE0NzQ2YTJhNjAwMTI3YTAwMDAwMDAwMDAyMjAwMjAzN2YzNDQwNWI4MzEyOGU0Y2RlY2I2NGY0NGJmZjY0ZDBkMWI2MTg4ZDJkNjU2NzgyYjEzNmUzNDg4ZWFiMWYyMDAwMDAwMDA0ZjAxMDQ4OGIyMWUwMDAwMDAwMDAwMDAwMDAwMDA2N2I4MzI1YTIzMDM3MTg2NTJkMDg1ZTJiYjY1ZTRjODRlOGE1MWVhYTRmNGVhNTZlMTE1NDIyOTBiZDI3ODc1MDM3Y2I0Y2VhOTY1YWU5ZDc4NDZhZGRjMmE1MzQzMThhMzc3NDM2ODY0ZjkwYTM4ZTI2MTljYTUxNTEzY2Y3YTdiMDQ4OGYyNTU3MTRmMDEwNDg4YjIxZTAwMDAwMDAwMDAwMDAwMDAwMGE1ZDVmZjFkNjg1OTY3MTliYWFkNWEyMDk5MjViNWVkZmRjNzg5OWNhNDYwYTA3MWIzYzg0YmQ1YmM3NmI5OTMwM2Y5ZGMzZjZmOTc0ZjJjOTBjNmQwYjdiN2M1MGJjNGRlNDliYjgxMDViZmEyNzIyM2JhYmM5MDk3MjBjNjE5MWEwNDNkNGIyYjk2NGYwMTA0ODhiMjFlMDAwMDAwMDAwMDAwMDAwMDAwZGQzMjc4MWY4ZGZmNjU1NjdkNzZiYTFjOTQ4NTAxNGY3ZWIwN2Q5NTI3YTUwMmNiZTBkYWZiNjRjMjA5NjFjZDAyOGE1NWNlM2YwYzk4OTY0ZGZjNjgxNGIxYjU1YjJiNzdjYzMxZDMzYTVhZTFhOTk0NDc2Y2U4YjIwYjE2MTg1MzA0MzVlYWJlOGQwMDAxMDEyYmQzNmU5ODAwMDAwMDAwMDAyMjUxMjA4NjZlNjRhYjk1MDI4YWZkZTZlNDJjZDBkY2JkNmIzOGY4ZGVjNzRkM2YzYTc2NDhlMTEyNTlmNjQwNzUzMjFiMDEwMzA0MDAwMDAwMDAyMTE2MzAyNDExNjMzM2E0NTEyNGFmNjE0MTA4MDM4M2VlYTFiNzU2YzE5ODNhMDdkNzFkNTBhMmM2MmQ3NzRiN2I2NDE1MDA4OGYyNTU3MTAwMDAwMDAwMDAwMDAwMDAyOTAwMDAwMDAwMDAwMDAwMjExNmU1YTU2ZWE5NmY2OTI5OTBlZjU4NGViZWNhYTU1YWNmOGQ3ZDRlMTg2ZGI0YzQ4OWU1NDk4MjEwY2MyMTYyZGYxNTAwM2Q0YjJiOTYwMDAwMDAwMDAwMDAwMDAwMjkwMDAwMDAwMDAwMDAwMDAxMTcyMDEyNjMzNjA1NDJlNmIzNTZlYWY1YzRmMDNiNGFmNGUwNjkzZTE2OWNhN2M0NDIwNzIwOWQzYmNjMmEzYjhmNjIwMTE4MjA4ZGNhMWExOGY3ZGI5MDAyZmFjZTVkMDBkOGViZTYyZWNkMGI1NTdhNjU5MGI2YTJmNTY4Njg5MDkyNmJkZGU1NDhmYzA1NDI0OTU0NDc0ZjAxODY2ZTY0YWI5NTAyOGFmZGU2ZTQyY2QwZGNiZDZiMzhmOGRlYzc0ZDNmM2E3NjQ4ZTExMjU5ZjY0MDc1MzIxYjEyNjMzNjA1NDJlNmIzNTZlYWY1YzRmMDNiNGFmNGUwNjkzZTE2OWNhN2M0NDIwNzIwOWQzYmNjMmEzYjhmNjI0MjAzMzAyNDExNjMzM2E0NTEyNGFmNjE0MTA4MDM4M2VlYTFiNzU2YzE5ODNhMDdkNzFkNTBhMmM2MmQ3NzRiN2I2NDAyZTVhNTZlYTk2ZjY5Mjk5MGVmNTg0ZWJlY2FhNTVhY2Y4ZDdkNGUxODZkYjRjNDg5ZTU0OTgyMTBjYzIxNjJkZjAwNDhmYzA1NDI0OTU0NDc0ZjA0NTc2MzY3NDczNzcwNjc3YTRjNTU2ZDcwMzY1ODcyNjM2ODRhNzE2OTQ4MzM3NDMyNjMzNzY1NGE1NjYzNTQ2YjU3Mzk1OTUwMzMzNjU4NmQ3MDMyNTg1NzM0NzQzNDQyNjI0MjQzMzY2NTc1Mzg1MDQyNDI2NzZhNjY1NjM5MzQ0MTFmZDc3OTk3NjczNjljZmRhYjZkMjRiZWEzYTEwZjNmZTE4NjM5YWJhMTgyYTFjZTZkMDQyNDJjMjc5NTgwMmZmNzBiNjBhNTVmNzYxMTQ0NjIyNTY1ZGNiMzAzMTcwMTgwOTVhZjJmYTliZjIwZmY3MWZkNDlmOGEyNzJlZjQzM2IwMDAxMDUyMDc1MWU5MjlmOWIyNzAxYTdhZTA4MzM5NWYzY2NkYzI2YTI5NWJmNGIwNjM0OGQ1NGEzMzBhNDYxYWQ3MTNmMjMwMTA2OGUwMWMwNDQyMDE2NWU5YTBiY2JhM2ZlNzhlNDAzMDg2MDUyMjg2ZTI0ZDFhOTZlMDRjOTQyZjIzZmQzYjQwNzA4NjU0MWQ1NWFhZDIwYTcxMDY0MDBhYjRhMzAzZTM2MDI1MWFjNGMwZDFlYmY3M2Q5ZjQyZGYyNDExYjM4M2M5Njc1YTQ4OTk5MjZjMGFjMDFjMDQ0MjBhNzEwNjQwMGFiNGEzMDNlMzYwMjUxYWM0YzBkMWViZjczZDlmNDJkZjI0MTFiMzgzYzk2NzVhNDg5OTkyNmMwYWQyMDNhYmU2NDc1MTBiYjNiMDgwODdmMzAyNTc2M2Q4ZDM0YjhiZGM4NWQzNmE5MWNlYWY2Mjg5YTM0NjYxNjliYTNhYzIxMDcxNjVlOWEwYmNiYTNmZTc4ZTQwMzA4NjA1MjI4NmUyNGQxYTk2ZTA0Yzk0MmYyM2ZkM2I0MDcwODY1NDFkNTVhMzUwMTkwNTIxN2RkMmFhNTcwN2E5YzVlZTA0NzZhZTRjZDBmYTU2YzNhNGMwMWNkODMyNTY0ZTRmNjQ5YTlkZWE4ZTg4OGYyNTU3MTAwMDAwMDAwMDAwMDAwMDAyOTAwMDAwMDBmMDAwMDAwMjEwNzNhYmU2NDc1MTBiYjNiMDgwODdmMzAyNTc2M2Q4ZDM0YjhiZGM4NWQzNmE5MWNlYWY2Mjg5YTM0NjYxNjliYTMzNTAxOWIwNjE3NmQwNTYyYzllODAwN2QzNGRhZDRiMTU5MDQyY2NlMWExZDczMjdjNDIxODVjMDUwZGNmNGU2YWE5NjNkNGIyYjk2MDAwMDAwMDAwMDAwMDAwMDI5MDAwMDAwMGYwMDAwMDAyMTA3YTcxMDY0MDBhYjRhMzAzZTM2MDI1MWFjNGMwZDFlYmY3M2Q5ZjQyZGYyNDExYjM4M2M5Njc1YTQ4OTk5MjZjMDU1MDI5MDUyMTdkZDJhYTU3MDdhOWM1ZWUwNDc2YWU0Y2QwZmE1NmMzYTRjMDFjZDgzMjU2NGU0ZjY0OWE5ZGVhOGU4OWIwNjE3NmQwNTYyYzllODAwN2QzNGRhZDRiMTU5MDQyY2NlMWExZDczMjdjNDIxODVjMDUwZGNmNGU2YWE5NjM1ZWFiZThkMDAwMDAwMDAwMDAwMDAwMDI5MDAwMDAwMGYwMDAwMDAwMDAwJyxcbn07XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bch.d.ts","sourceRoot":"","sources":["../../../../../../../test/unit/impl/bch/unit/bch.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,79 @@
|
|
|
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
|
+
const strict_1 = __importDefault(require("node:assert/strict"));
|
|
7
|
+
const sdk_api_1 = require("@bitgo-beta/sdk-api");
|
|
8
|
+
const sdk_test_1 = require("@bitgo-beta/sdk-test");
|
|
9
|
+
const bch_1 = require("../../../../../src/impl/bch");
|
|
10
|
+
function eq(actual, expected) {
|
|
11
|
+
strict_1.default.strictEqual(actual, expected);
|
|
12
|
+
}
|
|
13
|
+
describe('Custom BCH Tests', function () {
|
|
14
|
+
const bitgo = sdk_test_1.TestBitGo.decorate(sdk_api_1.BitGoAPI, { env: 'test' });
|
|
15
|
+
bitgo.initializeTestVars();
|
|
16
|
+
bitgo.safeRegister('bch', bch_1.Bch.createInstance);
|
|
17
|
+
bitgo.safeRegister('tbch', bch_1.Tbch.createInstance);
|
|
18
|
+
const bch = bitgo.coin('bch');
|
|
19
|
+
const tbch = bitgo.coin('tbch');
|
|
20
|
+
// we use mainnet bch so we can reuse the mainnet address examples
|
|
21
|
+
it('should correctly convert addresses', function () {
|
|
22
|
+
// P2PKH cashaddr -> cashaddr
|
|
23
|
+
eq(bch.canonicalAddress('bitcoincash:qpm2qsznhks23z7629mms6s4cwef74vcwvy22gdx6a', 'cashaddr'), 'bitcoincash:qpm2qsznhks23z7629mms6s4cwef74vcwvy22gdx6a');
|
|
24
|
+
eq(bch.canonicalAddress('qpm2qsznhks23z7629mms6s4cwef74vcwvy22gdx6a', 'cashaddr'), 'bitcoincash:qpm2qsznhks23z7629mms6s4cwef74vcwvy22gdx6a');
|
|
25
|
+
// P2PKH base58 -> cashaddr
|
|
26
|
+
eq(bch.canonicalAddress('1BpEi6DfDAUFd7GtittLSdBeYJvcoaVggu', 'cashaddr'), 'bitcoincash:qpm2qsznhks23z7629mms6s4cwef74vcwvy22gdx6a');
|
|
27
|
+
// P2SH cashaddr -> cashaddr
|
|
28
|
+
eq(bch.canonicalAddress('bitcoincash:ppm2qsznhks23z7629mms6s4cwef74vcwvn0h829pq', 'cashaddr'), 'bitcoincash:ppm2qsznhks23z7629mms6s4cwef74vcwvn0h829pq');
|
|
29
|
+
eq(bch.canonicalAddress('ppm2qsznhks23z7629mms6s4cwef74vcwvn0h829pq', 'cashaddr'), 'bitcoincash:ppm2qsznhks23z7629mms6s4cwef74vcwvn0h829pq');
|
|
30
|
+
// P2SH base58 -> cashaddr
|
|
31
|
+
eq(bch.canonicalAddress('3CWFddi6m4ndiGyKqzYvsFYagqDLPVMTzC', 'cashaddr'), 'bitcoincash:ppm2qsznhks23z7629mms6s4cwef74vcwvn0h829pq');
|
|
32
|
+
// no 'bitcoincash:' prefix
|
|
33
|
+
eq(bch.canonicalAddress('ppm2qsznhks23z7629mms6s4cwef74vcwvn0h829pq', 'cashaddr'), 'bitcoincash:ppm2qsznhks23z7629mms6s4cwef74vcwvn0h829pq');
|
|
34
|
+
// P2PKH cashaddr -> base58
|
|
35
|
+
eq(bch.canonicalAddress('bitcoincash:qqq3728yw0y47sqn6l2na30mcw6zm78dzqre909m2r', 'base58'), '16w1D5WRVKJuZUsSRzdLp9w3YGcgoxDXb');
|
|
36
|
+
eq(bch.canonicalAddress('qqq3728yw0y47sqn6l2na30mcw6zm78dzqre909m2r', 'base58'), '16w1D5WRVKJuZUsSRzdLp9w3YGcgoxDXb');
|
|
37
|
+
// P2PKH base58 -> base58
|
|
38
|
+
eq(bch.canonicalAddress('16w1D5WRVKJuZUsSRzdLp9w3YGcgoxDXb', 'base58'), '16w1D5WRVKJuZUsSRzdLp9w3YGcgoxDXb');
|
|
39
|
+
// P2SH cashaddr -> base58
|
|
40
|
+
eq(bch.canonicalAddress('bitcoincash:pr95sy3j9xwd2ap32xkykttr4cvcu7as4yc93ky28e', 'base58'), '3LDsS579y7sruadqu11beEJoTjdFiFCdX4');
|
|
41
|
+
eq(bch.canonicalAddress('pr95sy3j9xwd2ap32xkykttr4cvcu7as4yc93ky28e', 'base58'), '3LDsS579y7sruadqu11beEJoTjdFiFCdX4');
|
|
42
|
+
// P2SH base58 -> base58
|
|
43
|
+
eq(bch.canonicalAddress('3LDsS579y7sruadqu11beEJoTjdFiFCdX4', 'base58'), '3LDsS579y7sruadqu11beEJoTjdFiFCdX4');
|
|
44
|
+
// undefined version defaults to base58
|
|
45
|
+
eq(bch.canonicalAddress('bitcoincash:ppm2qsznhks23z7629mms6s4cwef74vcwvn0h829pq'), '3CWFddi6m4ndiGyKqzYvsFYagqDLPVMTzC');
|
|
46
|
+
eq(bch.canonicalAddress('ppm2qsznhks23z7629mms6s4cwef74vcwvn0h829pq'), '3CWFddi6m4ndiGyKqzYvsFYagqDLPVMTzC');
|
|
47
|
+
// all capitalized
|
|
48
|
+
eq(bch.canonicalAddress('BITCOINCASH:QQQ3728YW0Y47SQN6L2NA30MCW6ZM78DZQRE909M2R', 'base58'), '16w1D5WRVKJuZUsSRzdLp9w3YGcgoxDXb');
|
|
49
|
+
eq(bch.canonicalAddress('QQQ3728YW0Y47SQN6L2NA30MCW6ZM78DZQRE909M2R', 'base58'), '16w1D5WRVKJuZUsSRzdLp9w3YGcgoxDXb');
|
|
50
|
+
// testnet addresses
|
|
51
|
+
eq(tbch.canonicalAddress('2NCEDmmKNNnqKvnWw7pE3RLzuFe5aHHVy1X', 'cashaddr'), 'bchtest:prgrnjengs555k3cff2s3gqxg3xyyr9uzyh9js5m8f');
|
|
52
|
+
eq(tbch.canonicalAddress('n3jYBjCzgGNydQwf83Hz6GBzGBhMkKfgL1', 'cashaddr'), 'bchtest:qremgr9dr9x5swv82k69qdjzrvdxgkaaesftdp5xla');
|
|
53
|
+
eq(tbch.canonicalAddress('bchtest:prgrnjengs555k3cff2s3gqxg3xyyr9uzyh9js5m8f', 'cashaddr'), 'bchtest:prgrnjengs555k3cff2s3gqxg3xyyr9uzyh9js5m8f');
|
|
54
|
+
eq(tbch.canonicalAddress('bchtest:prgrnjengs555k3cff2s3gqxg3xyyr9uzyh9js5m8f', 'cashaddr'), 'bchtest:prgrnjengs555k3cff2s3gqxg3xyyr9uzyh9js5m8f');
|
|
55
|
+
eq(tbch.canonicalAddress('prgrnjengs555k3cff2s3gqxg3xyyr9uzyh9js5m8f', 'base58'), '2NCEDmmKNNnqKvnWw7pE3RLzuFe5aHHVy1X');
|
|
56
|
+
eq(tbch.canonicalAddress('prgrnjengs555k3cff2s3gqxg3xyyr9uzyh9js5m8f', 'base58'), '2NCEDmmKNNnqKvnWw7pE3RLzuFe5aHHVy1X');
|
|
57
|
+
eq(tbch.canonicalAddress('prgrnjengs555k3cff2s3gqxg3xyyr9uzyh9js5m8f', 'cashaddr'), 'bchtest:prgrnjengs555k3cff2s3gqxg3xyyr9uzyh9js5m8f');
|
|
58
|
+
});
|
|
59
|
+
it('should reject invalid addresses', function () {
|
|
60
|
+
strict_1.default.throws(() => bch.canonicalAddress('bitcoincash:sy3j9xwd2ap32xkykttr4cvcu7as4yc93ky28e', 'base58'));
|
|
61
|
+
strict_1.default.throws(() => bch.canonicalAddress('bitcoincash:yr95sy3j9xwd2ap32xkykttr4cvcu7as4yc93ky28e', 'base58'));
|
|
62
|
+
strict_1.default.throws(() => bch.canonicalAddress('bitcoincash:bitcoincash:pr95sy3j9xwd2ap32xkykttr4cvcu7as4yc93ky28e', 'base58'));
|
|
63
|
+
strict_1.default.throws(() => bch.canonicalAddress('3DDsS579y7sruadqu11beEJoTjdFiFCdX4', 'base58'));
|
|
64
|
+
strict_1.default.throws(() => bch.canonicalAddress(':qpm2qsznhks23z7629mms6s4cwef74vcwvy22gdx6a', 'base58'));
|
|
65
|
+
strict_1.default.throws(() => bch.canonicalAddress('bitcoin:qpm2qsznhks23z7629mms6s4cwef74vcwvy22gdx6a', 'base58'));
|
|
66
|
+
strict_1.default.throws(() => bch.canonicalAddress('bitcoincash:QPM2Qsznhks23z7629mms6s4cwef74vcwvy22gdx6a', 'cashaddr'));
|
|
67
|
+
strict_1.default.throws(() => bch.canonicalAddress('bitcoincash:qqq3728yw0y47sqn6l2na30mcw6zm78dzqre909m2r', 'blah'));
|
|
68
|
+
strict_1.default.throws(() => bch.canonicalAddress(undefined, 'blah'));
|
|
69
|
+
});
|
|
70
|
+
it('should validate BCH address formats through format-specific codecs', function () {
|
|
71
|
+
const base58Address = '1BpEi6DfDAUFd7GtittLSdBeYJvcoaVggu';
|
|
72
|
+
const cashaddr = 'bitcoincash:qpm2qsznhks23z7629mms6s4cwef74vcwvy22gdx6a';
|
|
73
|
+
strict_1.default.strictEqual(bch.isValidAddress(base58Address), true);
|
|
74
|
+
strict_1.default.strictEqual(bch.isValidAddress(cashaddr), true);
|
|
75
|
+
strict_1.default.strictEqual(bch.isValidAddress(cashaddr, { anyFormat: false }), false);
|
|
76
|
+
strict_1.default.strictEqual(bch.isValidAddress('bitcoincash:not-an-address'), false);
|
|
77
|
+
});
|
|
78
|
+
});
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmNoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vdGVzdC91bml0L2ltcGwvYmNoL3VuaXQvYmNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsZ0VBQXdDO0FBRXhDLGlEQUErQztBQUMvQyxtREFBK0Q7QUFFL0QscURBQXdEO0FBRXhELFNBQVMsRUFBRSxDQUFDLE1BQWMsRUFBRSxRQUFnQjtJQUMxQyxnQkFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7QUFDdkMsQ0FBQztBQUVELFFBQVEsQ0FBQyxrQkFBa0IsRUFBRTtJQUMzQixNQUFNLEtBQUssR0FBaUIsb0JBQVMsQ0FBQyxRQUFRLENBQUMsa0JBQVEsRUFBRSxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQzFFLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzNCLEtBQUssQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLFNBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUM5QyxLQUFLLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxVQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFFaEQsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQVEsQ0FBQztJQUNyQyxNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBUyxDQUFDO0lBRXhDLGtFQUFrRTtJQUNsRSxFQUFFLENBQUMsb0NBQW9DLEVBQUU7UUFDdkMsNkJBQTZCO1FBQzdCLEVBQUUsQ0FDQSxHQUFHLENBQUMsZ0JBQWdCLENBQUMsd0RBQXdELEVBQUUsVUFBVSxDQUFDLEVBQzFGLHdEQUF3RCxDQUN6RCxDQUFDO1FBQ0YsRUFBRSxDQUNBLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyw0Q0FBNEMsRUFBRSxVQUFVLENBQUMsRUFDOUUsd0RBQXdELENBQ3pELENBQUM7UUFDRiwy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QyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsd0RBQXdELEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUM1RyxnQkFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsU0FBZ0IsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLG9FQUFvRSxFQUFFO1FBQ3ZFLE1BQU0sYUFBYSxHQUFHLG9DQUFvQyxDQUFDO1FBQzNELE1BQU0sUUFBUSxHQUFHLHdEQUF3RCxDQUFDO1FBRTFFLGdCQUFNLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDNUQsZ0JBQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN2RCxnQkFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzlFLGdCQUFNLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsNEJBQTRCLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM5RSxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFzc2VydCBmcm9tICdub2RlOmFzc2VydC9zdHJpY3QnO1xuXG5pbXBvcnQgeyBCaXRHb0FQSSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1hcGknO1xuaW1wb3J0IHsgVGVzdEJpdEdvLCBUZXN0Qml0R29BUEkgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstdGVzdCc7XG5cbmltcG9ydCB7IEJjaCwgVGJjaCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsL2JjaCc7XG5cbmZ1bmN0aW9uIGVxKGFjdHVhbDogc3RyaW5nLCBleHBlY3RlZDogc3RyaW5nKSB7XG4gIGFzc2VydC5zdHJpY3RFcXVhbChhY3R1YWwsIGV4cGVjdGVkKTtcbn1cblxuZGVzY3JpYmUoJ0N1c3RvbSBCQ0ggVGVzdHMnLCBmdW5jdGlvbiAoKSB7XG4gIGNvbnN0IGJpdGdvOiBUZXN0Qml0R29BUEkgPSBUZXN0Qml0R28uZGVjb3JhdGUoQml0R29BUEksIHsgZW52OiAndGVzdCcgfSk7XG4gIGJpdGdvLmluaXRpYWxpemVUZXN0VmFycygpO1xuICBiaXRnby5zYWZlUmVnaXN0ZXIoJ2JjaCcsIEJjaC5jcmVhdGVJbnN0YW5jZSk7XG4gIGJpdGdvLnNhZmVSZWdpc3RlcigndGJjaCcsIFRiY2guY3JlYXRlSW5zdGFuY2UpO1xuXG4gIGNvbnN0IGJjaCA9IGJpdGdvLmNvaW4oJ2JjaCcpIGFzIEJjaDtcbiAgY29uc3QgdGJjaCA9IGJpdGdvLmNvaW4oJ3RiY2gnKSBhcyBUYmNoO1xuXG4gIC8vIHdlIHVzZSBtYWlubmV0IGJjaCBzbyB3ZSBjYW4gcmV1c2UgdGhlIG1haW5uZXQgYWRkcmVzcyBleGFtcGxlc1xuICBpdCgnc2hvdWxkIGNvcnJlY3RseSBjb252ZXJ0IGFkZHJlc3NlcycsIGZ1bmN0aW9uICgpIHtcbiAgICAvLyBQMlBLSCBjYXNoYWRkciAtPiBjYXNoYWRkclxuICAgIGVxKFxuICAgICAgYmNoLmNhbm9uaWNhbEFkZHJlc3MoJ2JpdGNvaW5jYXNoOnFwbTJxc3puaGtzMjN6NzYyOW1tczZzNGN3ZWY3NHZjd3Z5MjJnZHg2YScsICdjYXNoYWRkcicpLFxuICAgICAgJ2JpdGNvaW5jYXNoOnFwbTJxc3puaGtzMjN6NzYyOW1tczZzNGN3ZWY3NHZjd3Z5MjJnZHg2YSdcbiAgICApO1xuICAgIGVxKFxuICAgICAgYmNoLmNhbm9uaWNhbEFkZHJlc3MoJ3FwbTJxc3puaGtzMjN6NzYyOW1tczZzNGN3ZWY3NHZjd3Z5MjJnZHg2YScsICdjYXNoYWRkcicpLFxuICAgICAgJ2JpdGNvaW5jYXNoOnFwbTJxc3puaGtzMjN6NzYyOW1tczZzNGN3ZWY3NHZjd3Z5MjJnZHg2YSdcbiAgICApO1xuICAgIC8vIFAyUEtIIGJhc2U1OCAtPiBjYXNoYWRkclxuICAgIGVxKFxuICAgICAgYmNoLmNhbm9uaWNhbEFkZHJlc3MoJzFCcEVpNkRmREFVRmQ3R3RpdHRMU2RCZVlKdmNvYVZnZ3UnLCAnY2FzaGFkZHInKSxcbiAgICAgICdiaXRjb2luY2FzaDpxcG0ycXN6bmhrczIzejc2MjltbXM2czRjd2VmNzR2Y3d2eTIyZ2R4NmEnXG4gICAgKTtcbiAgICAvLyBQMlNIIGNhc2hhZGRyIC0+IGNhc2hhZGRyXG4gICAgZXEoXG4gICAgICBiY2guY2Fub25pY2FsQWRkcmVzcygnYml0Y29pbmNhc2g6cHBtMnFzem5oa3MyM3o3NjI5bW1zNnM0Y3dlZjc0dmN3dm4waDgyOXBxJywgJ2Nhc2hhZGRyJyksXG4gICAgICAnYml0Y29pbmNhc2g6cHBtMnFzem5oa3MyM3o3NjI5bW1zNnM0Y3dlZjc0dmN3dm4waDgyOXBxJ1xuICAgICk7XG4gICAgZXEoXG4gICAgICBiY2guY2Fub25pY2FsQWRkcmVzcygncHBtMnFzem5oa3MyM3o3NjI5bW1zNnM0Y3dlZjc0dmN3dm4waDgyOXBxJywgJ2Nhc2hhZGRyJyksXG4gICAgICAnYml0Y29pbmNhc2g6cHBtMnFzem5oa3MyM3o3NjI5bW1zNnM0Y3dlZjc0dmN3dm4waDgyOXBxJ1xuICAgICk7XG4gICAgLy8gUDJTSCBiYXNlNTggLT4gY2FzaGFkZHJcbiAgICBlcShcbiAgICAgIGJjaC5jYW5vbmljYWxBZGRyZXNzKCczQ1dGZGRpNm00bmRpR3lLcXpZdnNGWWFncURMUFZNVHpDJywgJ2Nhc2hhZGRyJyksXG4gICAgICAnYml0Y29pbmNhc2g6cHBtMnFzem5oa3MyM3o3NjI5bW1zNnM0Y3dlZjc0dmN3dm4waDgyOXBxJ1xuICAgICk7XG4gICAgLy8gbm8gJ2JpdGNvaW5jYXNoOicgcHJlZml4XG4gICAgZXEoXG4gICAgICBiY2guY2Fub25pY2FsQWRkcmVzcygncHBtMnFzem5oa3MyM3o3NjI5bW1zNnM0Y3dlZjc0dmN3dm4waDgyOXBxJywgJ2Nhc2hhZGRyJyksXG4gICAgICAnYml0Y29pbmNhc2g6cHBtMnFzem5oa3MyM3o3NjI5bW1zNnM0Y3dlZjc0dmN3dm4waDgyOXBxJ1xuICAgICk7XG4gICAgLy8gUDJQS0ggY2FzaGFkZHIgLT4gYmFzZTU4XG4gICAgZXEoXG4gICAgICBiY2guY2Fub25pY2FsQWRkcmVzcygnYml0Y29pbmNhc2g6cXFxMzcyOHl3MHk0N3NxbjZsMm5hMzBtY3c2em03OGR6cXJlOTA5bTJyJywgJ2Jhc2U1OCcpLFxuICAgICAgJzE2dzFENVdSVktKdVpVc1NSemRMcDl3M1lHY2dveERYYidcbiAgICApO1xuICAgIGVxKFxuICAgICAgYmNoLmNhbm9uaWNhbEFkZHJlc3MoJ3FxcTM3Mjh5dzB5NDdzcW42bDJuYTMwbWN3NnptNzhkenFyZTkwOW0ycicsICdiYXNlNTgnKSxcbiAgICAgICcxNncxRDVXUlZLSnVaVXNTUnpkTHA5dzNZR2Nnb3hEWGInXG4gICAgKTtcbiAgICAvLyBQMlBLSCBiYXNlNTggLT4gYmFzZTU4XG4gICAgZXEoYmNoLmNhbm9uaWNhbEFkZHJlc3MoJzE2dzFENVdSVktKdVpVc1NSemRMcDl3M1lHY2dveERYYicsICdiYXNlNTgnKSwgJzE2dzFENVdSVktKdVpVc1NSemRMcDl3M1lHY2dveERYYicpO1xuICAgIC8vIFAyU0ggY2FzaGFkZHIgLT4gYmFzZTU4XG4gICAgZXEoXG4gICAgICBiY2guY2Fub25pY2FsQWRkcmVzcygnYml0Y29pbmNhc2g6cHI5NXN5M2o5eHdkMmFwMzJ4a3lrdHRyNGN2Y3U3YXM0eWM5M2t5MjhlJywgJ2Jhc2U1OCcpLFxuICAgICAgJzNMRHNTNTc5eTdzcnVhZHF1MTFiZUVKb1RqZEZpRkNkWDQnXG4gICAgKTtcbiAgICBlcShcbiAgICAgIGJjaC5jYW5vbmljYWxBZGRyZXNzKCdwcjk1c3kzajl4d2QyYXAzMnhreWt0dHI0Y3ZjdTdhczR5Yzkza3kyOGUnLCAnYmFzZTU4JyksXG4gICAgICAnM0xEc1M1Nzl5N3NydWFkcXUxMWJlRUpvVGpkRmlGQ2RYNCdcbiAgICApO1xuICAgIC8vIFAyU0ggYmFzZTU4IC0+IGJhc2U1OFxuICAgIGVxKGJjaC5jYW5vbmljYWxBZGRyZXNzKCczTERzUzU3OXk3c3J1YWRxdTExYmVFSm9UamRGaUZDZFg0JywgJ2Jhc2U1OCcpLCAnM0xEc1M1Nzl5N3NydWFkcXUxMWJlRUpvVGpkRmlGQ2RYNCcpO1xuICAgIC8vIHVuZGVmaW5lZCB2ZXJzaW9uIGRlZmF1bHRzIHRvIGJhc2U1OFxuICAgIGVxKFxuICAgICAgYmNoLmNhbm9uaWNhbEFkZHJlc3MoJ2JpdGNvaW5jYXNoOnBwbTJxc3puaGtzMjN6NzYyOW1tczZzNGN3ZWY3NHZjd3ZuMGg4MjlwcScpLFxuICAgICAgJzNDV0ZkZGk2bTRuZGlHeUtxell2c0ZZYWdxRExQVk1UekMnXG4gICAgKTtcbiAgICBlcShiY2guY2Fub25pY2FsQWRkcmVzcygncHBtMnFzem5oa3MyM3o3NjI5bW1zNnM0Y3dlZjc0dmN3dm4waDgyOXBxJyksICczQ1dGZGRpNm00bmRpR3lLcXpZdnNGWWFncURMUFZNVHpDJyk7XG4gICAgLy8gYWxsIGNhcGl0YWxpemVkXG4gICAgZXEoXG4gICAgICBiY2guY2Fub25pY2FsQWRkcmVzcygnQklUQ09JTkNBU0g6UVFRMzcyOFlXMFk0N1NRTjZMMk5BMzBNQ1c2Wk03OERaUVJFOTA5TTJSJywgJ2Jhc2U1OCcpLFxuICAgICAgJzE2dzFENVdSVktKdVpVc1NSemRMcDl3M1lHY2dveERYYidcbiAgICApO1xuICAgIGVxKFxuICAgICAgYmNoLmNhbm9uaWNhbEFkZHJlc3MoJ1FRUTM3MjhZVzBZNDdTUU42TDJOQTMwTUNXNlpNNzhEWlFSRTkwOU0yUicsICdiYXNlNTgnKSxcbiAgICAgICcxNncxRDVXUlZLSnVaVXNTUnpkTHA5dzNZR2Nnb3hEWGInXG4gICAgKTtcbiAgICAvLyB0ZXN0bmV0IGFkZHJlc3Nlc1xuICAgIGVxKFxuICAgICAgdGJjaC5jYW5vbmljYWxBZGRyZXNzKCcyTkNFRG1tS05ObnFLdm5XdzdwRTNSTHp1RmU1YUhIVnkxWCcsICdjYXNoYWRkcicpLFxuICAgICAgJ2JjaHRlc3Q6cHJncm5qZW5nczU1NWszY2ZmMnMzZ3F4ZzN4eXlyOXV6eWg5anM1bThmJ1xuICAgICk7XG4gICAgZXEoXG4gICAgICB0YmNoLmNhbm9uaWNhbEFkZHJlc3MoJ24zallCakN6Z0dOeWRRd2Y4M0h6NkdCekdCaE1rS2ZnTDEnLCAnY2FzaGFkZHInKSxcbiAgICAgICdiY2h0ZXN0OnFyZW1ncjlkcjl4NXN3djgyazY5cWRqenJ2ZHhna2FhZXNmdGRwNXhsYSdcbiAgICApO1xuICAgIGVxKFxuICAgICAgdGJjaC5jYW5vbmljYWxBZGRyZXNzKCdiY2h0ZXN0OnByZ3JuamVuZ3M1NTVrM2NmZjJzM2dxeGczeHl5cjl1enloOWpzNW04ZicsICdjYXNoYWRkcicpLFxuICAgICAgJ2JjaHRlc3Q6cHJncm5qZW5nczU1NWszY2ZmMnMzZ3F4ZzN4eXlyOXV6eWg5anM1bThmJ1xuICAgICk7XG4gICAgZXEoXG4gICAgICB0YmNoLmNhbm9uaWNhbEFkZHJlc3MoJ2JjaHRlc3Q6cHJncm5qZW5nczU1NWszY2ZmMnMzZ3F4ZzN4eXlyOXV6eWg5anM1bThmJywgJ2Nhc2hhZGRyJyksXG4gICAgICAnYmNodGVzdDpwcmdybmplbmdzNTU1azNjZmYyczNncXhnM3h5eXI5dXp5aDlqczVtOGYnXG4gICAgKTtcbiAgICBlcShcbiAgICAgIHRiY2guY2Fub25pY2FsQWRkcmVzcygncHJncm5qZW5nczU1NWszY2ZmMnMzZ3F4ZzN4eXlyOXV6eWg5anM1bThmJywgJ2Jhc2U1OCcpLFxuICAgICAgJzJOQ0VEbW1LTk5ucUt2bld3N3BFM1JMenVGZTVhSEhWeTFYJ1xuICAgICk7XG4gICAgZXEoXG4gICAgICB0YmNoLmNhbm9uaWNhbEFkZHJlc3MoJ3ByZ3JuamVuZ3M1NTVrM2NmZjJzM2dxeGczeHl5cjl1enloOWpzNW04ZicsICdiYXNlNTgnKSxcbiAgICAgICcyTkNFRG1tS05ObnFLdm5XdzdwRTNSTHp1RmU1YUhIVnkxWCdcbiAgICApO1xuICAgIGVxKFxuICAgICAgdGJjaC5jYW5vbmljYWxBZGRyZXNzKCdwcmdybmplbmdzNTU1azNjZmYyczNncXhnM3h5eXI5dXp5aDlqczVtOGYnLCAnY2FzaGFkZHInKSxcbiAgICAgICdiY2h0ZXN0OnByZ3JuamVuZ3M1NTVrM2NmZjJzM2dxeGczeHl5cjl1enloOWpzNW04ZidcbiAgICApO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIHJlamVjdCBpbnZhbGlkIGFkZHJlc3NlcycsIGZ1bmN0aW9uICgpIHtcbiAgICBhc3NlcnQudGhyb3dzKCgpID0+IGJjaC5jYW5vbmljYWxBZGRyZXNzKCdiaXRjb2luY2FzaDpzeTNqOXh3ZDJhcDMyeGt5a3R0cjRjdmN1N2FzNHljOTNreTI4ZScsICdiYXNlNTgnKSk7XG4gICAgYXNzZXJ0LnRocm93cygoKSA9PiBiY2guY2Fub25pY2FsQWRkcmVzcygnYml0Y29pbmNhc2g6eXI5NXN5M2o5eHdkMmFwMzJ4a3lrdHRyNGN2Y3U3YXM0eWM5M2t5MjhlJywgJ2Jhc2U1OCcpKTtcbiAgICBhc3NlcnQudGhyb3dzKCgpID0+XG4gICAgICBiY2guY2Fub25pY2FsQWRkcmVzcygnYml0Y29pbmNhc2g6Yml0Y29pbmNhc2g6cHI5NXN5M2o5eHdkMmFwMzJ4a3lrdHRyNGN2Y3U3YXM0eWM5M2t5MjhlJywgJ2Jhc2U1OCcpXG4gICAgKTtcbiAgICBhc3NlcnQudGhyb3dzKCgpID0+IGJjaC5jYW5vbmljYWxBZGRyZXNzKCczRERzUzU3OXk3c3J1YWRxdTExYmVFSm9UamRGaUZDZFg0JywgJ2Jhc2U1OCcpKTtcbiAgICBhc3NlcnQudGhyb3dzKCgpID0+IGJjaC5jYW5vbmljYWxBZGRyZXNzKCc6cXBtMnFzem5oa3MyM3o3NjI5bW1zNnM0Y3dlZjc0dmN3dnkyMmdkeDZhJywgJ2Jhc2U1OCcpKTtcbiAgICBhc3NlcnQudGhyb3dzKCgpID0+IGJjaC5jYW5vbmljYWxBZGRyZXNzKCdiaXRjb2luOnFwbTJxc3puaGtzMjN6NzYyOW1tczZzNGN3ZWY3NHZjd3Z5MjJnZHg2YScsICdiYXNlNTgnKSk7XG4gICAgYXNzZXJ0LnRocm93cygoKSA9PiBiY2guY2Fub25pY2FsQWRkcmVzcygnYml0Y29pbmNhc2g6UVBNMlFzem5oa3MyM3o3NjI5bW1zNnM0Y3dlZjc0dmN3dnkyMmdkeDZhJywgJ2Nhc2hhZGRyJykpO1xuICAgIGFzc2VydC50aHJvd3MoKCkgPT4gYmNoLmNhbm9uaWNhbEFkZHJlc3MoJ2JpdGNvaW5jYXNoOnFxcTM3Mjh5dzB5NDdzcW42bDJuYTMwbWN3NnptNzhkenFyZTkwOW0ycicsICdibGFoJykpO1xuICAgIGFzc2VydC50aHJvd3MoKCkgPT4gYmNoLmNhbm9uaWNhbEFkZHJlc3ModW5kZWZpbmVkIGFzIGFueSwgJ2JsYWgnKSk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgdmFsaWRhdGUgQkNIIGFkZHJlc3MgZm9ybWF0cyB0aHJvdWdoIGZvcm1hdC1zcGVjaWZpYyBjb2RlY3MnLCBmdW5jdGlvbiAoKSB7XG4gICAgY29uc3QgYmFzZTU4QWRkcmVzcyA9ICcxQnBFaTZEZkRBVUZkN0d0aXR0TFNkQmVZSnZjb2FWZ2d1JztcbiAgICBjb25zdCBjYXNoYWRkciA9ICdiaXRjb2luY2FzaDpxcG0ycXN6bmhrczIzejc2MjltbXM2czRjd2VmNzR2Y3d2eTIyZ2R4NmEnO1xuXG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKGJjaC5pc1ZhbGlkQWRkcmVzcyhiYXNlNThBZGRyZXNzKSwgdHJ1ZSk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKGJjaC5pc1ZhbGlkQWRkcmVzcyhjYXNoYWRkciksIHRydWUpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChiY2guaXNWYWxpZEFkZHJlc3MoY2FzaGFkZHIsIHsgYW55Rm9ybWF0OiBmYWxzZSB9KSwgZmFsc2UpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChiY2guaXNWYWxpZEFkZHJlc3MoJ2JpdGNvaW5jYXNoOm5vdC1hbi1hZGRyZXNzJyksIGZhbHNlKTtcbiAgfSk7XG59KTtcbiJdfQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../test/unit/impl/bcha/unit/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,41 @@
|
|
|
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
|
+
const strict_1 = __importDefault(require("node:assert/strict"));
|
|
7
|
+
const sdk_api_1 = require("@bitgo-beta/sdk-api");
|
|
8
|
+
const sdk_test_1 = require("@bitgo-beta/sdk-test");
|
|
9
|
+
const bcha_1 = require("../../../../../src/impl/bcha");
|
|
10
|
+
describe('Bcha', function () {
|
|
11
|
+
const coinName = 'tbcha';
|
|
12
|
+
let bitgo;
|
|
13
|
+
let basecoin;
|
|
14
|
+
before(function () {
|
|
15
|
+
bitgo = sdk_test_1.TestBitGo.decorate(sdk_api_1.BitGoAPI, {
|
|
16
|
+
env: 'mock',
|
|
17
|
+
});
|
|
18
|
+
bitgo.initializeTestVars();
|
|
19
|
+
bitgo.safeRegister('bcha', bcha_1.Bcha.createInstance);
|
|
20
|
+
bitgo.safeRegister('tbcha', bcha_1.Tbcha.createInstance);
|
|
21
|
+
basecoin = bitgo.coin(coinName);
|
|
22
|
+
});
|
|
23
|
+
it('should instantiate the coin', function () {
|
|
24
|
+
strict_1.default.ok(bitgo.coin('tbcha') instanceof bcha_1.Tbcha);
|
|
25
|
+
strict_1.default.ok(bitgo.coin('bcha') instanceof bcha_1.Bcha);
|
|
26
|
+
});
|
|
27
|
+
it('should return tbcha', function () {
|
|
28
|
+
strict_1.default.strictEqual(basecoin.getChain(), 'tbcha');
|
|
29
|
+
});
|
|
30
|
+
it('should return full name', function () {
|
|
31
|
+
strict_1.default.strictEqual(basecoin.getFullName(), 'Testnet Bitcoin ABC');
|
|
32
|
+
});
|
|
33
|
+
it('should convert addresses', function () {
|
|
34
|
+
const mainnetBasecoin = bitgo.coin('bcha');
|
|
35
|
+
strict_1.default.strictEqual(mainnetBasecoin.canonicalAddress('38oymyUayu35QoLLKmc8CozbcHynH6Btkn', 'cashaddr'), 'ecash:pp8pnl7k6y8g073cggczfh22xrprxut5hymhjkq3er');
|
|
36
|
+
strict_1.default.strictEqual(mainnetBasecoin.canonicalAddress('ecash:pp8pnl7k6y8g073cggczfh22xrprxut5hymhjkq3er'), '38oymyUayu35QoLLKmc8CozbcHynH6Btkn');
|
|
37
|
+
strict_1.default.strictEqual(basecoin.canonicalAddress('mzopZJiBCjeAHXkShhgxfRsALgrYt3kxNP', 'cashaddr'), 'ectest:qrfekq9s0c8tcuh75wpcxqnyl5e7dhqk4gq6pjct44');
|
|
38
|
+
strict_1.default.strictEqual(basecoin.canonicalAddress('ectest:qrfekq9s0c8tcuh75wpcxqnyl5e7dhqk4gq6pjct44'), 'mzopZJiBCjeAHXkShhgxfRsALgrYt3kxNP');
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi90ZXN0L3VuaXQvaW1wbC9iY2hhL3VuaXQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxnRUFBd0M7QUFFeEMsaURBQStDO0FBQy9DLG1EQUErRDtBQUUvRCx1REFBMkQ7QUFFM0QsUUFBUSxDQUFDLE1BQU0sRUFBRTtJQUNmLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQztJQUN6QixJQUFJLEtBQW1CLENBQUM7SUFDeEIsSUFBSSxRQUFRLENBQUM7SUFFYixNQUFNLENBQUM7UUFDTCxLQUFLLEdBQUcsb0JBQVMsQ0FBQyxRQUFRLENBQUMsa0JBQVEsRUFBRTtZQUNuQyxHQUFHLEVBQUUsTUFBTTtTQUNaLENBQUMsQ0FBQztRQUNILEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQzNCLEtBQUssQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLFdBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNoRCxLQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxZQUFLLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDbEQsUUFBUSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDbEMsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsNkJBQTZCLEVBQUU7UUFDaEMsZ0JBQU0sQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxZQUFLLENBQUMsQ0FBQztRQUNoRCxnQkFBTSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLFdBQUksQ0FBQyxDQUFDO0lBQ2hELENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLHFCQUFxQixFQUFFO1FBQ3hCLGdCQUFNLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNuRCxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyx5QkFBeUIsRUFBRTtRQUM1QixnQkFBTSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLEVBQUUscUJBQXFCLENBQUMsQ0FBQztJQUNwRSxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQywwQkFBMEIsRUFBRTtRQUM3QixNQUFNLGVBQWUsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRTNDLGdCQUFNLENBQUMsV0FBVyxDQUNoQixlQUFlLENBQUMsZ0JBQWdCLENBQUMsb0NBQW9DLEVBQUUsVUFBVSxDQUFDLEVBQ2xGLGtEQUFrRCxDQUNuRCxDQUFDO1FBQ0YsZ0JBQU0sQ0FBQyxXQUFXLENBQ2hCLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FBQyxrREFBa0QsQ0FBQyxFQUNwRixvQ0FBb0MsQ0FDckMsQ0FBQztRQUNGLGdCQUFNLENBQUMsV0FBVyxDQUNoQixRQUFRLENBQUMsZ0JBQWdCLENBQUMsb0NBQW9DLEVBQUUsVUFBVSxDQUFDLEVBQzNFLG1EQUFtRCxDQUNwRCxDQUFDO1FBQ0YsZ0JBQU0sQ0FBQyxXQUFXLENBQ2hCLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxtREFBbUQsQ0FBQyxFQUM5RSxvQ0FBb0MsQ0FDckMsQ0FBQztJQUNKLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gJ25vZGU6YXNzZXJ0L3N0cmljdCc7XG5cbmltcG9ydCB7IEJpdEdvQVBJIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWFwaSc7XG5pbXBvcnQgeyBUZXN0Qml0R28sIFRlc3RCaXRHb0FQSSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay10ZXN0JztcblxuaW1wb3J0IHsgQmNoYSwgVGJjaGEgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9zcmMvaW1wbC9iY2hhJztcblxuZGVzY3JpYmUoJ0JjaGEnLCBmdW5jdGlvbiAoKSB7XG4gIGNvbnN0IGNvaW5OYW1lID0gJ3RiY2hhJztcbiAgbGV0IGJpdGdvOiBUZXN0Qml0R29BUEk7XG4gIGxldCBiYXNlY29pbjtcblxuICBiZWZvcmUoZnVuY3Rpb24gKCkge1xuICAgIGJpdGdvID0gVGVzdEJpdEdvLmRlY29yYXRlKEJpdEdvQVBJLCB7XG4gICAgICBlbnY6ICdtb2NrJyxcbiAgICB9KTtcbiAgICBiaXRnby5pbml0aWFsaXplVGVzdFZhcnMoKTtcbiAgICBiaXRnby5zYWZlUmVnaXN0ZXIoJ2JjaGEnLCBCY2hhLmNyZWF0ZUluc3RhbmNlKTtcbiAgICBiaXRnby5zYWZlUmVnaXN0ZXIoJ3RiY2hhJywgVGJjaGEuY3JlYXRlSW5zdGFuY2UpO1xuICAgIGJhc2Vjb2luID0gYml0Z28uY29pbihjb2luTmFtZSk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgaW5zdGFudGlhdGUgdGhlIGNvaW4nLCBmdW5jdGlvbiAoKSB7XG4gICAgYXNzZXJ0Lm9rKGJpdGdvLmNvaW4oJ3RiY2hhJykgaW5zdGFuY2VvZiBUYmNoYSk7XG4gICAgYXNzZXJ0Lm9rKGJpdGdvLmNvaW4oJ2JjaGEnKSBpbnN0YW5jZW9mIEJjaGEpO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIHJldHVybiB0YmNoYScsIGZ1bmN0aW9uICgpIHtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoYmFzZWNvaW4uZ2V0Q2hhaW4oKSwgJ3RiY2hhJyk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgcmV0dXJuIGZ1bGwgbmFtZScsIGZ1bmN0aW9uICgpIHtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoYmFzZWNvaW4uZ2V0RnVsbE5hbWUoKSwgJ1Rlc3RuZXQgQml0Y29pbiBBQkMnKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBjb252ZXJ0IGFkZHJlc3NlcycsIGZ1bmN0aW9uICgpIHtcbiAgICBjb25zdCBtYWlubmV0QmFzZWNvaW4gPSBiaXRnby5jb2luKCdiY2hhJyk7XG5cbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoXG4gICAgICBtYWlubmV0QmFzZWNvaW4uY2Fub25pY2FsQWRkcmVzcygnMzhveW15VWF5dTM1UW9MTEttYzhDb3piY0h5bkg2QnRrbicsICdjYXNoYWRkcicpLFxuICAgICAgJ2VjYXNoOnBwOHBubDdrNnk4ZzA3M2NnZ2N6ZmgyMnhycHJ4dXQ1aHltaGprcTNlcidcbiAgICApO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAgIG1haW5uZXRCYXNlY29pbi5jYW5vbmljYWxBZGRyZXNzKCdlY2FzaDpwcDhwbmw3azZ5OGcwNzNjZ2djemZoMjJ4cnByeHV0NWh5bWhqa3EzZXInKSxcbiAgICAgICczOG95bXlVYXl1MzVRb0xMS21jOENvemJjSHluSDZCdGtuJ1xuICAgICk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgYmFzZWNvaW4uY2Fub25pY2FsQWRkcmVzcygnbXpvcFpKaUJDamVBSFhrU2hoZ3hmUnNBTGdyWXQza3hOUCcsICdjYXNoYWRkcicpLFxuICAgICAgJ2VjdGVzdDpxcmZla3E5czBjOHRjdWg3NXdwY3hxbnlsNWU3ZGhxazRncTZwamN0NDQnXG4gICAgKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoXG4gICAgICBiYXNlY29pbi5jYW5vbmljYWxBZGRyZXNzKCdlY3Rlc3Q6cXJmZWtxOXMwYzh0Y3VoNzV3cGN4cW55bDVlN2RocWs0Z3E2cGpjdDQ0JyksXG4gICAgICAnbXpvcFpKaUJDamVBSFhrU2hoZ3hmUnNBTGdyWXQza3hOUCdcbiAgICApO1xuICB9KTtcbn0pO1xuIl19
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../test/unit/impl/bsv/unit/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,34 @@
|
|
|
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
|
+
const strict_1 = __importDefault(require("node:assert/strict"));
|
|
7
|
+
const sdk_api_1 = require("@bitgo-beta/sdk-api");
|
|
8
|
+
const sdk_test_1 = require("@bitgo-beta/sdk-test");
|
|
9
|
+
const bsv_1 = require("../../../../../src/impl/bsv");
|
|
10
|
+
describe('Bsv', function () {
|
|
11
|
+
const coinName = 'tbsv';
|
|
12
|
+
let bitgo;
|
|
13
|
+
let basecoin;
|
|
14
|
+
before(function () {
|
|
15
|
+
bitgo = sdk_test_1.TestBitGo.decorate(sdk_api_1.BitGoAPI, {
|
|
16
|
+
env: 'mock',
|
|
17
|
+
});
|
|
18
|
+
bitgo.initializeTestVars();
|
|
19
|
+
bitgo.safeRegister('bsv', bsv_1.Bsv.createInstance);
|
|
20
|
+
bitgo.safeRegister('tbsv', bsv_1.Tbsv.createInstance);
|
|
21
|
+
basecoin = bitgo.coin(coinName);
|
|
22
|
+
});
|
|
23
|
+
it('should instantiate the coin', function () {
|
|
24
|
+
strict_1.default.ok(bitgo.coin('tbsv') instanceof bsv_1.Tbsv);
|
|
25
|
+
strict_1.default.ok(bitgo.coin('bsv') instanceof bsv_1.Bsv);
|
|
26
|
+
});
|
|
27
|
+
it('should return tbsv', function () {
|
|
28
|
+
strict_1.default.strictEqual(basecoin.getChain(), 'tbsv');
|
|
29
|
+
});
|
|
30
|
+
it('should return full name', function () {
|
|
31
|
+
strict_1.default.strictEqual(basecoin.getFullName(), 'Testnet Bitcoin SV');
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi90ZXN0L3VuaXQvaW1wbC9ic3YvdW5pdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGdFQUF3QztBQUV4QyxpREFBK0M7QUFDL0MsbURBQStEO0FBRS9ELHFEQUF3RDtBQUV4RCxRQUFRLENBQUMsS0FBSyxFQUFFO0lBQ2QsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDO0lBQ3hCLElBQUksS0FBbUIsQ0FBQztJQUN4QixJQUFJLFFBQVEsQ0FBQztJQUViLE1BQU0sQ0FBQztRQUNMLEtBQUssR0FBRyxvQkFBUyxDQUFDLFFBQVEsQ0FBQyxrQkFBUSxFQUFFO1lBQ25DLEdBQUcsRUFBRSxNQUFNO1NBQ1osQ0FBQyxDQUFDO1FBQ0gsS0FBSyxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDM0IsS0FBSyxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsU0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzlDLEtBQUssQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLFVBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNoRCxRQUFRLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNsQyxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyw2QkFBNkIsRUFBRTtRQUNoQyxnQkFBTSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLFVBQUksQ0FBQyxDQUFDO1FBQzlDLGdCQUFNLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksU0FBRyxDQUFDLENBQUM7SUFDOUMsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsb0JBQW9CLEVBQUU7UUFDdkIsZ0JBQU0sQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2xELENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLHlCQUF5QixFQUFFO1FBQzVCLGdCQUFNLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO0lBQ25FLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gJ25vZGU6YXNzZXJ0L3N0cmljdCc7XG5cbmltcG9ydCB7IEJpdEdvQVBJIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWFwaSc7XG5pbXBvcnQgeyBUZXN0Qml0R28sIFRlc3RCaXRHb0FQSSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay10ZXN0JztcblxuaW1wb3J0IHsgQnN2LCBUYnN2IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc3JjL2ltcGwvYnN2JztcblxuZGVzY3JpYmUoJ0JzdicsIGZ1bmN0aW9uICgpIHtcbiAgY29uc3QgY29pbk5hbWUgPSAndGJzdic7XG4gIGxldCBiaXRnbzogVGVzdEJpdEdvQVBJO1xuICBsZXQgYmFzZWNvaW47XG5cbiAgYmVmb3JlKGZ1bmN0aW9uICgpIHtcbiAgICBiaXRnbyA9IFRlc3RCaXRHby5kZWNvcmF0ZShCaXRHb0FQSSwge1xuICAgICAgZW52OiAnbW9jaycsXG4gICAgfSk7XG4gICAgYml0Z28uaW5pdGlhbGl6ZVRlc3RWYXJzKCk7XG4gICAgYml0Z28uc2FmZVJlZ2lzdGVyKCdic3YnLCBCc3YuY3JlYXRlSW5zdGFuY2UpO1xuICAgIGJpdGdvLnNhZmVSZWdpc3RlcigndGJzdicsIFRic3YuY3JlYXRlSW5zdGFuY2UpO1xuICAgIGJhc2Vjb2luID0gYml0Z28uY29pbihjb2luTmFtZSk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgaW5zdGFudGlhdGUgdGhlIGNvaW4nLCBmdW5jdGlvbiAoKSB7XG4gICAgYXNzZXJ0Lm9rKGJpdGdvLmNvaW4oJ3Ric3YnKSBpbnN0YW5jZW9mIFRic3YpO1xuICAgIGFzc2VydC5vayhiaXRnby5jb2luKCdic3YnKSBpbnN0YW5jZW9mIEJzdik7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgcmV0dXJuIHRic3YnLCBmdW5jdGlvbiAoKSB7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKGJhc2Vjb2luLmdldENoYWluKCksICd0YnN2Jyk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgcmV0dXJuIGZ1bGwgbmFtZScsIGZ1bmN0aW9uICgpIHtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoYmFzZWNvaW4uZ2V0RnVsbE5hbWUoKSwgJ1Rlc3RuZXQgQml0Y29pbiBTVicpO1xuICB9KTtcbn0pO1xuIl19
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../test/unit/impl/btg/unit/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,33 @@
|
|
|
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
|
+
const strict_1 = __importDefault(require("node:assert/strict"));
|
|
7
|
+
const sdk_api_1 = require("@bitgo-beta/sdk-api");
|
|
8
|
+
const sdk_test_1 = require("@bitgo-beta/sdk-test");
|
|
9
|
+
const btg_1 = require("../../../../../src/impl/btg");
|
|
10
|
+
describe('Btg', function () {
|
|
11
|
+
const coinName = 'btg';
|
|
12
|
+
let bitgo;
|
|
13
|
+
let basecoin;
|
|
14
|
+
before(function () {
|
|
15
|
+
bitgo = sdk_test_1.TestBitGo.decorate(sdk_api_1.BitGoAPI, {
|
|
16
|
+
env: 'mock',
|
|
17
|
+
});
|
|
18
|
+
bitgo.initializeTestVars();
|
|
19
|
+
bitgo.safeRegister('btg', btg_1.Btg.createInstance);
|
|
20
|
+
basecoin = bitgo.coin(coinName);
|
|
21
|
+
});
|
|
22
|
+
it('should instantiate the coin', function () {
|
|
23
|
+
basecoin = bitgo.coin('btg');
|
|
24
|
+
strict_1.default.ok(basecoin instanceof btg_1.Btg);
|
|
25
|
+
});
|
|
26
|
+
it('should return btg', function () {
|
|
27
|
+
strict_1.default.strictEqual(basecoin.getChain(), 'btg');
|
|
28
|
+
});
|
|
29
|
+
it('should return full name', function () {
|
|
30
|
+
strict_1.default.strictEqual(basecoin.getFullName(), 'Bitcoin Gold');
|
|
31
|
+
});
|
|
32
|
+
});
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi90ZXN0L3VuaXQvaW1wbC9idGcvdW5pdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGdFQUF3QztBQUV4QyxpREFBK0M7QUFDL0MsbURBQStEO0FBRS9ELHFEQUFrRDtBQUVsRCxRQUFRLENBQUMsS0FBSyxFQUFFO0lBQ2QsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQ3ZCLElBQUksS0FBbUIsQ0FBQztJQUN4QixJQUFJLFFBQVEsQ0FBQztJQUViLE1BQU0sQ0FBQztRQUNMLEtBQUssR0FBRyxvQkFBUyxDQUFDLFFBQVEsQ0FBQyxrQkFBUSxFQUFFO1lBQ25DLEdBQUcsRUFBRSxNQUFNO1NBQ1osQ0FBQyxDQUFDO1FBQ0gsS0FBSyxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDM0IsS0FBSyxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsU0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzlDLFFBQVEsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2xDLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLDZCQUE2QixFQUFFO1FBQ2hDLFFBQVEsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdCLGdCQUFNLENBQUMsRUFBRSxDQUFDLFFBQVEsWUFBWSxTQUFHLENBQUMsQ0FBQztJQUNyQyxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyxtQkFBbUIsRUFBRTtRQUN0QixnQkFBTSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDakQsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMseUJBQXlCLEVBQUU7UUFDNUIsZ0JBQU0sQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBQzdELENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gJ25vZGU6YXNzZXJ0L3N0cmljdCc7XG5cbmltcG9ydCB7IEJpdEdvQVBJIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWFwaSc7XG5pbXBvcnQgeyBUZXN0Qml0R28sIFRlc3RCaXRHb0FQSSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay10ZXN0JztcblxuaW1wb3J0IHsgQnRnIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc3JjL2ltcGwvYnRnJztcblxuZGVzY3JpYmUoJ0J0ZycsIGZ1bmN0aW9uICgpIHtcbiAgY29uc3QgY29pbk5hbWUgPSAnYnRnJztcbiAgbGV0IGJpdGdvOiBUZXN0Qml0R29BUEk7XG4gIGxldCBiYXNlY29pbjtcblxuICBiZWZvcmUoZnVuY3Rpb24gKCkge1xuICAgIGJpdGdvID0gVGVzdEJpdEdvLmRlY29yYXRlKEJpdEdvQVBJLCB7XG4gICAgICBlbnY6ICdtb2NrJyxcbiAgICB9KTtcbiAgICBiaXRnby5pbml0aWFsaXplVGVzdFZhcnMoKTtcbiAgICBiaXRnby5zYWZlUmVnaXN0ZXIoJ2J0ZycsIEJ0Zy5jcmVhdGVJbnN0YW5jZSk7XG4gICAgYmFzZWNvaW4gPSBiaXRnby5jb2luKGNvaW5OYW1lKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBpbnN0YW50aWF0ZSB0aGUgY29pbicsIGZ1bmN0aW9uICgpIHtcbiAgICBiYXNlY29pbiA9IGJpdGdvLmNvaW4oJ2J0ZycpO1xuICAgIGFzc2VydC5vayhiYXNlY29pbiBpbnN0YW5jZW9mIEJ0Zyk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgcmV0dXJuIGJ0ZycsIGZ1bmN0aW9uICgpIHtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoYmFzZWNvaW4uZ2V0Q2hhaW4oKSwgJ2J0ZycpO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIHJldHVybiBmdWxsIG5hbWUnLCBmdW5jdGlvbiAoKSB7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKGJhc2Vjb2luLmdldEZ1bGxOYW1lKCksICdCaXRjb2luIEdvbGQnKTtcbiAgfSk7XG59KTtcbiJdfQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../test/unit/impl/dash/unit/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,34 @@
|
|
|
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
|
+
const strict_1 = __importDefault(require("node:assert/strict"));
|
|
7
|
+
const sdk_api_1 = require("@bitgo-beta/sdk-api");
|
|
8
|
+
const sdk_test_1 = require("@bitgo-beta/sdk-test");
|
|
9
|
+
const dash_1 = require("../../../../../src/impl/dash");
|
|
10
|
+
describe('Dash', function () {
|
|
11
|
+
const coinName = 'tdash';
|
|
12
|
+
let bitgo;
|
|
13
|
+
let basecoin;
|
|
14
|
+
before(function () {
|
|
15
|
+
bitgo = sdk_test_1.TestBitGo.decorate(sdk_api_1.BitGoAPI, {
|
|
16
|
+
env: 'mock',
|
|
17
|
+
});
|
|
18
|
+
bitgo.initializeTestVars();
|
|
19
|
+
bitgo.safeRegister('dash', dash_1.Dash.createInstance);
|
|
20
|
+
bitgo.safeRegister('tdash', dash_1.Tdash.createInstance);
|
|
21
|
+
basecoin = bitgo.coin(coinName);
|
|
22
|
+
});
|
|
23
|
+
it('should instantiate the coin', function () {
|
|
24
|
+
strict_1.default.ok(bitgo.coin('tdash') instanceof dash_1.Tdash);
|
|
25
|
+
strict_1.default.ok(bitgo.coin('dash') instanceof dash_1.Dash);
|
|
26
|
+
});
|
|
27
|
+
it('should return tdash', function () {
|
|
28
|
+
strict_1.default.strictEqual(basecoin.getChain(), 'tdash');
|
|
29
|
+
});
|
|
30
|
+
it('should return full name', function () {
|
|
31
|
+
strict_1.default.strictEqual(basecoin.getFullName(), 'Testnet Dash');
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi90ZXN0L3VuaXQvaW1wbC9kYXNoL3VuaXQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxnRUFBd0M7QUFFeEMsaURBQStDO0FBQy9DLG1EQUErRDtBQUUvRCx1REFBMkQ7QUFFM0QsUUFBUSxDQUFDLE1BQU0sRUFBRTtJQUNmLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQztJQUN6QixJQUFJLEtBQW1CLENBQUM7SUFDeEIsSUFBSSxRQUFRLENBQUM7SUFFYixNQUFNLENBQUM7UUFDTCxLQUFLLEdBQUcsb0JBQVMsQ0FBQyxRQUFRLENBQUMsa0JBQVEsRUFBRTtZQUNuQyxHQUFHLEVBQUUsTUFBTTtTQUNaLENBQUMsQ0FBQztRQUNILEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQzNCLEtBQUssQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLFdBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNoRCxLQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxZQUFLLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDbEQsUUFBUSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDbEMsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsNkJBQTZCLEVBQUU7UUFDaEMsZ0JBQU0sQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxZQUFLLENBQUMsQ0FBQztRQUNoRCxnQkFBTSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLFdBQUksQ0FBQyxDQUFDO0lBQ2hELENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLHFCQUFxQixFQUFFO1FBQ3hCLGdCQUFNLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNuRCxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyx5QkFBeUIsRUFBRTtRQUM1QixnQkFBTSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDN0QsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhc3NlcnQgZnJvbSAnbm9kZTphc3NlcnQvc3RyaWN0JztcblxuaW1wb3J0IHsgQml0R29BUEkgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstYXBpJztcbmltcG9ydCB7IFRlc3RCaXRHbywgVGVzdEJpdEdvQVBJIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLXRlc3QnO1xuXG5pbXBvcnQgeyBEYXNoLCBUZGFzaCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsL2Rhc2gnO1xuXG5kZXNjcmliZSgnRGFzaCcsIGZ1bmN0aW9uICgpIHtcbiAgY29uc3QgY29pbk5hbWUgPSAndGRhc2gnO1xuICBsZXQgYml0Z286IFRlc3RCaXRHb0FQSTtcbiAgbGV0IGJhc2Vjb2luO1xuXG4gIGJlZm9yZShmdW5jdGlvbiAoKSB7XG4gICAgYml0Z28gPSBUZXN0Qml0R28uZGVjb3JhdGUoQml0R29BUEksIHtcbiAgICAgIGVudjogJ21vY2snLFxuICAgIH0pO1xuICAgIGJpdGdvLmluaXRpYWxpemVUZXN0VmFycygpO1xuICAgIGJpdGdvLnNhZmVSZWdpc3RlcignZGFzaCcsIERhc2guY3JlYXRlSW5zdGFuY2UpO1xuICAgIGJpdGdvLnNhZmVSZWdpc3RlcigndGRhc2gnLCBUZGFzaC5jcmVhdGVJbnN0YW5jZSk7XG4gICAgYmFzZWNvaW4gPSBiaXRnby5jb2luKGNvaW5OYW1lKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBpbnN0YW50aWF0ZSB0aGUgY29pbicsIGZ1bmN0aW9uICgpIHtcbiAgICBhc3NlcnQub2soYml0Z28uY29pbigndGRhc2gnKSBpbnN0YW5jZW9mIFRkYXNoKTtcbiAgICBhc3NlcnQub2soYml0Z28uY29pbignZGFzaCcpIGluc3RhbmNlb2YgRGFzaCk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgcmV0dXJuIHRkYXNoJywgZnVuY3Rpb24gKCkge1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChiYXNlY29pbi5nZXRDaGFpbigpLCAndGRhc2gnKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCByZXR1cm4gZnVsbCBuYW1lJywgZnVuY3Rpb24gKCkge1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChiYXNlY29pbi5nZXRGdWxsTmFtZSgpLCAnVGVzdG5ldCBEYXNoJyk7XG4gIH0pO1xufSk7XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../test/unit/impl/doge/unit/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,34 @@
|
|
|
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
|
+
const strict_1 = __importDefault(require("node:assert/strict"));
|
|
7
|
+
const sdk_api_1 = require("@bitgo-beta/sdk-api");
|
|
8
|
+
const sdk_test_1 = require("@bitgo-beta/sdk-test");
|
|
9
|
+
const doge_1 = require("../../../../../src/impl/doge");
|
|
10
|
+
describe('Doge', function () {
|
|
11
|
+
const coinName = 'tdoge';
|
|
12
|
+
let bitgo;
|
|
13
|
+
let basecoin;
|
|
14
|
+
before(function () {
|
|
15
|
+
bitgo = sdk_test_1.TestBitGo.decorate(sdk_api_1.BitGoAPI, {
|
|
16
|
+
env: 'mock',
|
|
17
|
+
});
|
|
18
|
+
bitgo.initializeTestVars();
|
|
19
|
+
bitgo.safeRegister('doge', doge_1.Doge.createInstance);
|
|
20
|
+
bitgo.safeRegister('tdoge', doge_1.Tdoge.createInstance);
|
|
21
|
+
basecoin = bitgo.coin(coinName);
|
|
22
|
+
});
|
|
23
|
+
it('should instantiate the coin', function () {
|
|
24
|
+
strict_1.default.ok(bitgo.coin('tdoge') instanceof doge_1.Tdoge);
|
|
25
|
+
strict_1.default.ok(bitgo.coin('doge') instanceof doge_1.Doge);
|
|
26
|
+
});
|
|
27
|
+
it('should return tdoge', function () {
|
|
28
|
+
strict_1.default.strictEqual(basecoin.getChain(), 'tdoge');
|
|
29
|
+
});
|
|
30
|
+
it('should return full name', function () {
|
|
31
|
+
strict_1.default.strictEqual(basecoin.getFullName(), 'Testnet Dogecoin');
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi90ZXN0L3VuaXQvaW1wbC9kb2dlL3VuaXQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxnRUFBd0M7QUFFeEMsaURBQStDO0FBQy9DLG1EQUErRDtBQUUvRCx1REFBMkQ7QUFFM0QsUUFBUSxDQUFDLE1BQU0sRUFBRTtJQUNmLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQztJQUN6QixJQUFJLEtBQW1CLENBQUM7SUFDeEIsSUFBSSxRQUFRLENBQUM7SUFFYixNQUFNLENBQUM7UUFDTCxLQUFLLEdBQUcsb0JBQVMsQ0FBQyxRQUFRLENBQUMsa0JBQVEsRUFBRTtZQUNuQyxHQUFHLEVBQUUsTUFBTTtTQUNaLENBQUMsQ0FBQztRQUNILEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQzNCLEtBQUssQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLFdBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNoRCxLQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxZQUFLLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDbEQsUUFBUSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDbEMsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsNkJBQTZCLEVBQUU7UUFDaEMsZ0JBQU0sQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxZQUFLLENBQUMsQ0FBQztRQUNoRCxnQkFBTSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLFdBQUksQ0FBQyxDQUFDO0lBQ2hELENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLHFCQUFxQixFQUFFO1FBQ3hCLGdCQUFNLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNuRCxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyx5QkFBeUIsRUFBRTtRQUM1QixnQkFBTSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztJQUNqRSxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFzc2VydCBmcm9tICdub2RlOmFzc2VydC9zdHJpY3QnO1xuXG5pbXBvcnQgeyBCaXRHb0FQSSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1hcGknO1xuaW1wb3J0IHsgVGVzdEJpdEdvLCBUZXN0Qml0R29BUEkgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstdGVzdCc7XG5cbmltcG9ydCB7IERvZ2UsIFRkb2dlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc3JjL2ltcGwvZG9nZSc7XG5cbmRlc2NyaWJlKCdEb2dlJywgZnVuY3Rpb24gKCkge1xuICBjb25zdCBjb2luTmFtZSA9ICd0ZG9nZSc7XG4gIGxldCBiaXRnbzogVGVzdEJpdEdvQVBJO1xuICBsZXQgYmFzZWNvaW47XG5cbiAgYmVmb3JlKGZ1bmN0aW9uICgpIHtcbiAgICBiaXRnbyA9IFRlc3RCaXRHby5kZWNvcmF0ZShCaXRHb0FQSSwge1xuICAgICAgZW52OiAnbW9jaycsXG4gICAgfSk7XG4gICAgYml0Z28uaW5pdGlhbGl6ZVRlc3RWYXJzKCk7XG4gICAgYml0Z28uc2FmZVJlZ2lzdGVyKCdkb2dlJywgRG9nZS5jcmVhdGVJbnN0YW5jZSk7XG4gICAgYml0Z28uc2FmZVJlZ2lzdGVyKCd0ZG9nZScsIFRkb2dlLmNyZWF0ZUluc3RhbmNlKTtcbiAgICBiYXNlY29pbiA9IGJpdGdvLmNvaW4oY29pbk5hbWUpO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIGluc3RhbnRpYXRlIHRoZSBjb2luJywgZnVuY3Rpb24gKCkge1xuICAgIGFzc2VydC5vayhiaXRnby5jb2luKCd0ZG9nZScpIGluc3RhbmNlb2YgVGRvZ2UpO1xuICAgIGFzc2VydC5vayhiaXRnby5jb2luKCdkb2dlJykgaW5zdGFuY2VvZiBEb2dlKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCByZXR1cm4gdGRvZ2UnLCBmdW5jdGlvbiAoKSB7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKGJhc2Vjb2luLmdldENoYWluKCksICd0ZG9nZScpO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIHJldHVybiBmdWxsIG5hbWUnLCBmdW5jdGlvbiAoKSB7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKGJhc2Vjb2luLmdldEZ1bGxOYW1lKCksICdUZXN0bmV0IERvZ2Vjb2luJyk7XG4gIH0pO1xufSk7XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../test/unit/impl/pearl/unit/index.ts"],"names":[],"mappings":""}
|