@bsv/sdk 1.3.12 → 1.3.13
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/dist/cjs/mod.js +15 -15
- package/dist/cjs/mod.js.map +1 -1
- package/dist/cjs/package.json +10 -2
- package/dist/cjs/src/auth/Peer.js +62 -46
- package/dist/cjs/src/auth/Peer.js.map +1 -1
- package/dist/cjs/src/auth/SessionManager.js +4 -4
- package/dist/cjs/src/auth/SessionManager.js.map +1 -1
- package/dist/cjs/src/auth/__tests/Peer.test.js +446 -0
- package/dist/cjs/src/auth/__tests/Peer.test.js.map +1 -0
- package/dist/cjs/src/auth/__tests/SessionManager.test.js +69 -0
- package/dist/cjs/src/auth/__tests/SessionManager.test.js.map +1 -0
- package/dist/cjs/src/auth/certificates/Certificate.js +26 -23
- package/dist/cjs/src/auth/certificates/Certificate.js.map +1 -1
- package/dist/cjs/src/auth/certificates/MasterCertificate.js +18 -16
- package/dist/cjs/src/auth/certificates/MasterCertificate.js.map +1 -1
- package/dist/cjs/src/auth/certificates/VerifiableCertificate.js +7 -7
- package/dist/cjs/src/auth/certificates/VerifiableCertificate.js.map +1 -1
- package/dist/cjs/src/auth/certificates/__tests/Certificate.test.js +182 -0
- package/dist/cjs/src/auth/certificates/__tests/Certificate.test.js.map +1 -0
- package/dist/cjs/src/auth/certificates/__tests/CompletedProtoWallet.js +22 -22
- package/dist/cjs/src/auth/certificates/__tests/CompletedProtoWallet.js.map +1 -1
- package/dist/cjs/src/auth/certificates/__tests/MasterCertificate.test.js +184 -0
- package/dist/cjs/src/auth/certificates/__tests/MasterCertificate.test.js.map +1 -0
- package/dist/cjs/src/auth/certificates/__tests/VerifiableCertificate.test.js +75 -0
- package/dist/cjs/src/auth/certificates/__tests/VerifiableCertificate.test.js.map +1 -0
- package/dist/cjs/src/auth/certificates/index.js +5 -5
- package/dist/cjs/src/auth/certificates/index.js.map +1 -1
- package/dist/cjs/src/auth/clients/AuthFetch.js +74 -64
- package/dist/cjs/src/auth/clients/AuthFetch.js.map +1 -1
- package/dist/cjs/src/auth/clients/index.js +1 -1
- package/dist/cjs/src/auth/clients/index.js.map +1 -1
- package/dist/cjs/src/auth/index.js +7 -7
- package/dist/cjs/src/auth/index.js.map +1 -1
- package/dist/cjs/src/auth/transports/SimplifiedFetchTransport.js +62 -54
- package/dist/cjs/src/auth/transports/SimplifiedFetchTransport.js.map +1 -1
- package/dist/cjs/src/auth/transports/index.js +1 -1
- package/dist/cjs/src/auth/transports/index.js.map +1 -1
- package/dist/cjs/src/auth/utils/__tests/cryptononce.test.js +101 -0
- package/dist/cjs/src/auth/utils/__tests/cryptononce.test.js.map +1 -0
- package/dist/cjs/src/auth/utils/__tests/getVerifiableCertificates.test.js +106 -0
- package/dist/cjs/src/auth/utils/__tests/getVerifiableCertificates.test.js.map +1 -0
- package/dist/cjs/src/auth/utils/__tests/validateCertificates.test.js +111 -0
- package/dist/cjs/src/auth/utils/__tests/validateCertificates.test.js.map +1 -0
- package/dist/cjs/src/auth/utils/createNonce.js +4 -4
- package/dist/cjs/src/auth/utils/createNonce.js.map +1 -1
- package/dist/cjs/src/auth/utils/getVerifiableCertificates.js +2 -2
- package/dist/cjs/src/auth/utils/getVerifiableCertificates.js.map +1 -1
- package/dist/cjs/src/auth/utils/index.js +4 -4
- package/dist/cjs/src/auth/utils/index.js.map +1 -1
- package/dist/cjs/src/auth/utils/validateCertificates.js +2 -2
- package/dist/cjs/src/auth/utils/validateCertificates.js.map +1 -1
- package/dist/cjs/src/auth/utils/verifyNonce.js +3 -3
- package/dist/cjs/src/auth/utils/verifyNonce.js.map +1 -1
- package/dist/cjs/src/compat/BSM.js +9 -9
- package/dist/cjs/src/compat/BSM.js.map +1 -1
- package/dist/cjs/src/compat/ECIES.js +157 -116
- package/dist/cjs/src/compat/ECIES.js.map +1 -1
- package/dist/cjs/src/compat/HD.js +75 -75
- package/dist/cjs/src/compat/HD.js.map +1 -1
- package/dist/cjs/src/compat/Mnemonic.js +98 -93
- package/dist/cjs/src/compat/Mnemonic.js.map +1 -1
- package/dist/cjs/src/compat/Utxo.js +5 -5
- package/dist/cjs/src/compat/Utxo.js.map +1 -1
- package/dist/cjs/src/compat/__tests/BSM.test.js +69 -0
- package/dist/cjs/src/compat/__tests/BSM.test.js.map +1 -0
- package/dist/cjs/src/compat/__tests/ECIES.test.js +115 -0
- package/dist/cjs/src/compat/__tests/ECIES.test.js.map +1 -0
- package/dist/cjs/src/compat/__tests/HD.test.js +336 -0
- package/dist/cjs/src/compat/__tests/HD.test.js.map +1 -0
- package/dist/cjs/src/compat/__tests/Mnemonic.test.js +150 -0
- package/dist/cjs/src/compat/__tests/Mnemonic.test.js.map +1 -0
- package/dist/cjs/src/compat/__tests/Mnemonic.vectors.js +175 -0
- package/dist/cjs/src/compat/__tests/Mnemonic.vectors.js.map +1 -0
- package/dist/cjs/src/compat/index.js +9 -9
- package/dist/cjs/src/compat/index.js.map +1 -1
- package/dist/cjs/src/messages/EncryptedMessage.js +17 -15
- package/dist/cjs/src/messages/EncryptedMessage.js.map +1 -1
- package/dist/cjs/src/messages/SignedMessage.js +20 -20
- package/dist/cjs/src/messages/SignedMessage.js.map +1 -1
- package/dist/cjs/src/messages/__tests/EncryptedMessage.test.js +57 -0
- package/dist/cjs/src/messages/__tests/EncryptedMessage.test.js.map +1 -0
- package/dist/cjs/src/messages/__tests/SignedMessage.test.js +52 -0
- package/dist/cjs/src/messages/__tests/SignedMessage.test.js.map +1 -0
- package/dist/cjs/src/messages/index.js +2 -2
- package/dist/cjs/src/messages/index.js.map +1 -1
- package/dist/cjs/src/overlay-tools/LookupResolver.js +20 -13
- package/dist/cjs/src/overlay-tools/LookupResolver.js.map +1 -1
- package/dist/cjs/src/overlay-tools/OverlayAdminTokenTemplate.js +44 -32
- package/dist/cjs/src/overlay-tools/OverlayAdminTokenTemplate.js.map +1 -1
- package/dist/cjs/src/overlay-tools/SHIPBroadcaster.js +41 -30
- package/dist/cjs/src/overlay-tools/SHIPBroadcaster.js.map +1 -1
- package/dist/cjs/src/overlay-tools/__tests/LookupResolver.test.js +1471 -0
- package/dist/cjs/src/overlay-tools/__tests/LookupResolver.test.js.map +1 -0
- package/dist/cjs/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.js +78 -0
- package/dist/cjs/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.js.map +1 -0
- package/dist/cjs/src/overlay-tools/__tests/SHIPBroadcaster.test.js +933 -0
- package/dist/cjs/src/overlay-tools/__tests/SHIPBroadcaster.test.js.map +1 -0
- package/dist/cjs/src/overlay-tools/index.js +8 -8
- package/dist/cjs/src/overlay-tools/index.js.map +1 -1
- package/dist/cjs/src/primitives/BasePoint.js +2 -2
- package/dist/cjs/src/primitives/BasePoint.js.map +1 -1
- package/dist/cjs/src/primitives/BigNumber.js +46 -59
- package/dist/cjs/src/primitives/BigNumber.js.map +1 -1
- package/dist/cjs/src/primitives/Curve.js +29 -39
- package/dist/cjs/src/primitives/Curve.js.map +1 -1
- package/dist/cjs/src/primitives/DRBG.js +8 -14
- package/dist/cjs/src/primitives/DRBG.js.map +1 -1
- package/dist/cjs/src/primitives/ECDSA.js +24 -24
- package/dist/cjs/src/primitives/ECDSA.js.map +1 -1
- package/dist/cjs/src/primitives/Hash.js +76 -111
- package/dist/cjs/src/primitives/Hash.js.map +1 -1
- package/dist/cjs/src/primitives/JacobianPoint.js +20 -16
- package/dist/cjs/src/primitives/JacobianPoint.js.map +1 -1
- package/dist/cjs/src/primitives/K256.js +2 -2
- package/dist/cjs/src/primitives/K256.js.map +1 -1
- package/dist/cjs/src/primitives/Mersenne.js +4 -4
- package/dist/cjs/src/primitives/Mersenne.js.map +1 -1
- package/dist/cjs/src/primitives/MontgomoryMethod.js +5 -5
- package/dist/cjs/src/primitives/MontgomoryMethod.js.map +1 -1
- package/dist/cjs/src/primitives/Point.js +74 -72
- package/dist/cjs/src/primitives/Point.js.map +1 -1
- package/dist/cjs/src/primitives/Polynomial.js +15 -13
- package/dist/cjs/src/primitives/Polynomial.js.map +1 -1
- package/dist/cjs/src/primitives/PrivateKey.js +48 -39
- package/dist/cjs/src/primitives/PrivateKey.js.map +1 -1
- package/dist/cjs/src/primitives/PublicKey.js +23 -23
- package/dist/cjs/src/primitives/PublicKey.js.map +1 -1
- package/dist/cjs/src/primitives/Random.js +4 -4
- package/dist/cjs/src/primitives/Random.js.map +1 -1
- package/dist/cjs/src/primitives/ReductionContext.js +11 -11
- package/dist/cjs/src/primitives/ReductionContext.js.map +1 -1
- package/dist/cjs/src/primitives/Schnorr.js +29 -23
- package/dist/cjs/src/primitives/Schnorr.js.map +1 -1
- package/dist/cjs/src/primitives/Signature.js +25 -24
- package/dist/cjs/src/primitives/Signature.js.map +1 -1
- package/dist/cjs/src/primitives/SymmetricKey.js +26 -26
- package/dist/cjs/src/primitives/SymmetricKey.js.map +1 -1
- package/dist/cjs/src/primitives/TransactionSignature.js +23 -21
- package/dist/cjs/src/primitives/TransactionSignature.js.map +1 -1
- package/dist/cjs/src/primitives/__tests/AESGCM.test.js +248 -0
- package/dist/cjs/src/primitives/__tests/AESGCM.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/BRC42.private.vectors.js +36 -0
- package/dist/cjs/src/primitives/__tests/BRC42.private.vectors.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/BRC42.public.vectors.js +36 -0
- package/dist/cjs/src/primitives/__tests/BRC42.public.vectors.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/BigNumber.arithmatic.test.js +501 -0
- package/dist/cjs/src/primitives/__tests/BigNumber.arithmatic.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/BigNumber.binary.test.js +185 -0
- package/dist/cjs/src/primitives/__tests/BigNumber.binary.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/BigNumber.constructor.test.js +149 -0
- package/dist/cjs/src/primitives/__tests/BigNumber.constructor.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/BigNumber.dhGroup.test.js +23 -0
- package/dist/cjs/src/primitives/__tests/BigNumber.dhGroup.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/BigNumber.fixtures.js +268 -0
- package/dist/cjs/src/primitives/__tests/BigNumber.fixtures.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/BigNumber.serializers.test.js +147 -0
- package/dist/cjs/src/primitives/__tests/BigNumber.serializers.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/BigNumber.utils.test.js +322 -0
- package/dist/cjs/src/primitives/__tests/BigNumber.utils.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/Curve.unit.test.js +145 -0
- package/dist/cjs/src/primitives/__tests/Curve.unit.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/DRBG.test.js +22 -0
- package/dist/cjs/src/primitives/__tests/DRBG.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/DRBG.vectors.js +170 -0
- package/dist/cjs/src/primitives/__tests/DRBG.vectors.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/ECDH.test.js +34 -0
- package/dist/cjs/src/primitives/__tests/ECDH.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/ECDSA.test.js +89 -0
- package/dist/cjs/src/primitives/__tests/ECDSA.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/HMAC.test.js +60 -0
- package/dist/cjs/src/primitives/__tests/HMAC.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/Hash.test.js +159 -0
- package/dist/cjs/src/primitives/__tests/Hash.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/PBKDF2.vectors.js +122 -0
- package/dist/cjs/src/primitives/__tests/PBKDF2.vectors.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/PrivateKey.split.test.js +105 -0
- package/dist/cjs/src/primitives/__tests/PrivateKey.split.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/PrivateKey.test.js +90 -0
- package/dist/cjs/src/primitives/__tests/PrivateKey.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/PublicKey.test.js +83 -0
- package/dist/cjs/src/primitives/__tests/PublicKey.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/Random.test.js +19 -0
- package/dist/cjs/src/primitives/__tests/Random.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/Reader.test.js +282 -0
- package/dist/cjs/src/primitives/__tests/Reader.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/ReductionContext.test.js +224 -0
- package/dist/cjs/src/primitives/__tests/ReductionContext.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/Schnorr.test.js +213 -0
- package/dist/cjs/src/primitives/__tests/Schnorr.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/SymmetricKey.test.js +51 -0
- package/dist/cjs/src/primitives/__tests/SymmetricKey.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/SymmetricKey.vectors.js +43 -0
- package/dist/cjs/src/primitives/__tests/SymmetricKey.vectors.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/Writer.test.js +176 -0
- package/dist/cjs/src/primitives/__tests/Writer.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/bug-31.test.js +32 -0
- package/dist/cjs/src/primitives/__tests/bug-31.test.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/sighash.vectors.js +3506 -0
- package/dist/cjs/src/primitives/__tests/sighash.vectors.js.map +1 -0
- package/dist/cjs/src/primitives/__tests/utils.test.js +110 -0
- package/dist/cjs/src/primitives/__tests/utils.test.js.map +1 -0
- package/dist/cjs/src/primitives/index.js +27 -27
- package/dist/cjs/src/primitives/index.js.map +1 -1
- package/dist/cjs/src/primitives/utils.js +70 -60
- package/dist/cjs/src/primitives/utils.js.map +1 -1
- package/dist/cjs/src/script/LockingScript.js +2 -2
- package/dist/cjs/src/script/LockingScript.js.map +1 -1
- package/dist/cjs/src/script/Script.js +49 -47
- package/dist/cjs/src/script/Script.js.map +1 -1
- package/dist/cjs/src/script/Spend.js +305 -300
- package/dist/cjs/src/script/Spend.js.map +1 -1
- package/dist/cjs/src/script/UnlockingScript.js +2 -2
- package/dist/cjs/src/script/UnlockingScript.js.map +1 -1
- package/dist/cjs/src/script/__tests/Script.test.js +347 -0
- package/dist/cjs/src/script/__tests/Script.test.js.map +1 -0
- package/dist/cjs/src/script/__tests/Spend.test.js +282 -0
- package/dist/cjs/src/script/__tests/Spend.test.js.map +1 -0
- package/dist/cjs/src/script/__tests/SpendComplex.test.js +52 -0
- package/dist/cjs/src/script/__tests/SpendComplex.test.js.map +1 -0
- package/dist/cjs/src/script/__tests/script.invalid.vectors.js +2370 -0
- package/dist/cjs/src/script/__tests/script.invalid.vectors.js.map +1 -0
- package/dist/cjs/src/script/__tests/script.valid.vectors.js +1181 -0
- package/dist/cjs/src/script/__tests/script.valid.vectors.js.map +1 -0
- package/dist/cjs/src/script/__tests/spend.valid.vectors.js +2298 -0
- package/dist/cjs/src/script/__tests/spend.valid.vectors.js.map +1 -0
- package/dist/cjs/src/script/index.js +11 -11
- package/dist/cjs/src/script/index.js.map +1 -1
- package/dist/cjs/src/script/templates/P2PKH.js +40 -36
- package/dist/cjs/src/script/templates/P2PKH.js.map +1 -1
- package/dist/cjs/src/script/templates/PushDrop.js +42 -43
- package/dist/cjs/src/script/templates/PushDrop.js.map +1 -1
- package/dist/cjs/src/script/templates/RPuzzle.js +48 -45
- package/dist/cjs/src/script/templates/RPuzzle.js.map +1 -1
- package/dist/cjs/src/script/templates/__tests/PushDrop.test.js +161 -0
- package/dist/cjs/src/script/templates/__tests/PushDrop.test.js.map +1 -0
- package/dist/cjs/src/script/templates/index.js +6 -6
- package/dist/cjs/src/script/templates/index.js.map +1 -1
- package/dist/cjs/src/totp/__tests/totp.test.js +67 -0
- package/dist/cjs/src/totp/__tests/totp.test.js.map +1 -0
- package/dist/cjs/src/totp/index.js +1 -1
- package/dist/cjs/src/totp/index.js.map +1 -1
- package/dist/cjs/src/totp/totp.js +7 -7
- package/dist/cjs/src/totp/totp.js.map +1 -1
- package/dist/cjs/src/transaction/Beef.js +141 -129
- package/dist/cjs/src/transaction/Beef.js.map +1 -1
- package/dist/cjs/src/transaction/BeefParty.js +25 -25
- package/dist/cjs/src/transaction/BeefParty.js.map +1 -1
- package/dist/cjs/src/transaction/BeefTx.js +25 -23
- package/dist/cjs/src/transaction/BeefTx.js.map +1 -1
- package/dist/cjs/src/transaction/Broadcaster.js.map +1 -1
- package/dist/cjs/src/transaction/MerklePath.js +27 -22
- package/dist/cjs/src/transaction/MerklePath.js.map +1 -1
- package/dist/cjs/src/transaction/Transaction.js +89 -157
- package/dist/cjs/src/transaction/Transaction.js.map +1 -1
- package/dist/cjs/src/transaction/__tests/Beef.test.js +393 -0
- package/dist/cjs/src/transaction/__tests/Beef.test.js.map +1 -0
- package/dist/cjs/src/transaction/__tests/MerklePath.test.js +209 -0
- package/dist/cjs/src/transaction/__tests/MerklePath.test.js.map +1 -0
- package/dist/cjs/src/transaction/__tests/Transaction.benchmarks.test.js +219 -0
- package/dist/cjs/src/transaction/__tests/Transaction.benchmarks.test.js.map +1 -0
- package/dist/cjs/src/transaction/__tests/Transaction.test.js +1073 -0
- package/dist/cjs/src/transaction/__tests/Transaction.test.js.map +1 -0
- package/dist/cjs/src/transaction/__tests/bigtx.vectors.js +7 -0
- package/dist/cjs/src/transaction/__tests/bigtx.vectors.js.map +1 -0
- package/dist/cjs/src/transaction/__tests/bump.invalid.vectors.js +11 -0
- package/dist/cjs/src/transaction/__tests/bump.invalid.vectors.js.map +1 -0
- package/dist/cjs/src/transaction/__tests/bump.valid.vectors.js +7 -0
- package/dist/cjs/src/transaction/__tests/bump.valid.vectors.js.map +1 -0
- package/dist/cjs/src/transaction/__tests/tx.invalid.vectors.js +230 -0
- package/dist/cjs/src/transaction/__tests/tx.invalid.vectors.js.map +1 -0
- package/dist/cjs/src/transaction/__tests/tx.valid.vectors.js +296 -0
- package/dist/cjs/src/transaction/__tests/tx.valid.vectors.js.map +1 -0
- package/dist/cjs/src/transaction/broadcasters/ARC.js +39 -35
- package/dist/cjs/src/transaction/broadcasters/ARC.js.map +1 -1
- package/dist/cjs/src/transaction/broadcasters/DefaultBroadcaster.js +2 -2
- package/dist/cjs/src/transaction/broadcasters/DefaultBroadcaster.js.map +1 -1
- package/dist/cjs/src/transaction/broadcasters/WhatsOnChainBroadcaster.js +15 -15
- package/dist/cjs/src/transaction/broadcasters/WhatsOnChainBroadcaster.js.map +1 -1
- package/dist/cjs/src/transaction/broadcasters/__tests/ARC.test.js +246 -0
- package/dist/cjs/src/transaction/broadcasters/__tests/ARC.test.js.map +1 -0
- package/dist/cjs/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.js +148 -0
- package/dist/cjs/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.js.map +1 -0
- package/dist/cjs/src/transaction/broadcasters/index.js +6 -6
- package/dist/cjs/src/transaction/broadcasters/index.js.map +1 -1
- package/dist/cjs/src/transaction/chaintrackers/DefaultChainTracker.js +2 -2
- package/dist/cjs/src/transaction/chaintrackers/DefaultChainTracker.js.map +1 -1
- package/dist/cjs/src/transaction/chaintrackers/WhatsOnChain.js +8 -8
- package/dist/cjs/src/transaction/chaintrackers/WhatsOnChain.js.map +1 -1
- package/dist/cjs/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.js +155 -0
- package/dist/cjs/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.js.map +1 -0
- package/dist/cjs/src/transaction/chaintrackers/index.js +4 -4
- package/dist/cjs/src/transaction/chaintrackers/index.js.map +1 -1
- package/dist/cjs/src/transaction/fee-models/SatoshisPerKilobyte.js +3 -3
- package/dist/cjs/src/transaction/fee-models/SatoshisPerKilobyte.js.map +1 -1
- package/dist/cjs/src/transaction/fee-models/index.js +2 -2
- package/dist/cjs/src/transaction/fee-models/index.js.map +1 -1
- package/dist/cjs/src/transaction/http/DefaultHttpClient.js +11 -11
- package/dist/cjs/src/transaction/http/DefaultHttpClient.js.map +1 -1
- package/dist/cjs/src/transaction/http/FetchHttpClient.js +4 -2
- package/dist/cjs/src/transaction/http/FetchHttpClient.js.map +1 -1
- package/dist/cjs/src/transaction/http/NodejsHttpClient.js +10 -8
- package/dist/cjs/src/transaction/http/NodejsHttpClient.js.map +1 -1
- package/dist/cjs/src/transaction/http/index.js +6 -6
- package/dist/cjs/src/transaction/http/index.js.map +1 -1
- package/dist/cjs/src/transaction/index.js +12 -12
- package/dist/cjs/src/transaction/index.js.map +1 -1
- package/dist/cjs/src/wallet/CachedKeyDeriver.js +65 -63
- package/dist/cjs/src/wallet/CachedKeyDeriver.js.map +1 -1
- package/dist/cjs/src/wallet/KeyDeriver.js +66 -58
- package/dist/cjs/src/wallet/KeyDeriver.js.map +1 -1
- package/dist/cjs/src/wallet/ProtoWallet.js +27 -14
- package/dist/cjs/src/wallet/ProtoWallet.js.map +1 -1
- package/dist/cjs/src/wallet/WalletClient.js +15 -14
- package/dist/cjs/src/wallet/WalletClient.js.map +1 -1
- package/dist/cjs/src/wallet/__tests/CachedKeyDeriver.test.js +269 -0
- package/dist/cjs/src/wallet/__tests/CachedKeyDeriver.test.js.map +1 -0
- package/dist/cjs/src/wallet/__tests/KeyDeriver.test.js +114 -0
- package/dist/cjs/src/wallet/__tests/KeyDeriver.test.js.map +1 -0
- package/dist/cjs/src/wallet/__tests/ProtoWallet.test.js +475 -0
- package/dist/cjs/src/wallet/__tests/ProtoWallet.test.js.map +1 -0
- package/dist/cjs/src/wallet/index.js +12 -12
- package/dist/cjs/src/wallet/index.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/HTTPWalletJSON.js +3 -3
- package/dist/cjs/src/wallet/substrates/HTTPWalletJSON.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/HTTPWalletWire.js +10 -10
- package/dist/cjs/src/wallet/substrates/HTTPWalletWire.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/WalletWireCalls.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/WalletWireProcessor.js +1293 -1316
- package/dist/cjs/src/wallet/substrates/WalletWireProcessor.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/WalletWireTransceiver.js +320 -272
- package/dist/cjs/src/wallet/substrates/WalletWireTransceiver.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/XDM.js +8 -5
- package/dist/cjs/src/wallet/substrates/XDM.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/__tests/WalletWire.integration.test.js +1962 -0
- package/dist/cjs/src/wallet/substrates/__tests/WalletWire.integration.test.js.map +1 -0
- package/dist/cjs/src/wallet/substrates/__tests/XDM.test.js +579 -0
- package/dist/cjs/src/wallet/substrates/__tests/XDM.test.js.map +1 -0
- package/dist/cjs/src/wallet/substrates/index.js +12 -12
- package/dist/cjs/src/wallet/substrates/index.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/window.CWI.js +4 -4
- package/dist/cjs/src/wallet/substrates/window.CWI.js.map +1 -1
- package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/esm/mod.js +31 -15
- package/dist/esm/mod.js.map +1 -1
- package/dist/esm/src/auth/Peer.js +67 -47
- package/dist/esm/src/auth/Peer.js.map +1 -1
- package/dist/esm/src/auth/SessionManager.js +9 -5
- package/dist/esm/src/auth/SessionManager.js.map +1 -1
- package/dist/esm/src/auth/__tests/Peer.test.js +448 -0
- package/dist/esm/src/auth/__tests/Peer.test.js.map +1 -0
- package/dist/esm/src/auth/__tests/SessionManager.test.js +69 -0
- package/dist/esm/src/auth/__tests/SessionManager.test.js.map +1 -0
- package/dist/esm/src/auth/certificates/Certificate.js +31 -25
- package/dist/esm/src/auth/certificates/Certificate.js.map +1 -1
- package/dist/esm/src/auth/certificates/MasterCertificate.js +25 -16
- package/dist/esm/src/auth/certificates/MasterCertificate.js.map +1 -1
- package/dist/esm/src/auth/certificates/VerifiableCertificate.js +14 -7
- package/dist/esm/src/auth/certificates/VerifiableCertificate.js.map +1 -1
- package/dist/esm/src/auth/certificates/__tests/Certificate.test.js +182 -0
- package/dist/esm/src/auth/certificates/__tests/Certificate.test.js.map +1 -0
- package/dist/esm/src/auth/certificates/__tests/CompletedProtoWallet.js +26 -22
- package/dist/esm/src/auth/certificates/__tests/CompletedProtoWallet.js.map +1 -1
- package/dist/esm/src/auth/certificates/__tests/MasterCertificate.test.js +184 -0
- package/dist/esm/src/auth/certificates/__tests/MasterCertificate.test.js.map +1 -0
- package/dist/esm/src/auth/certificates/__tests/VerifiableCertificate.test.js +75 -0
- package/dist/esm/src/auth/certificates/__tests/VerifiableCertificate.test.js.map +1 -0
- package/dist/esm/src/auth/certificates/index.js +25 -4
- package/dist/esm/src/auth/certificates/index.js.map +1 -1
- package/dist/esm/src/auth/clients/AuthFetch.js +79 -65
- package/dist/esm/src/auth/clients/AuthFetch.js.map +1 -1
- package/dist/esm/src/auth/clients/index.js +17 -1
- package/dist/esm/src/auth/clients/index.js.map +1 -1
- package/dist/esm/src/auth/index.js +23 -7
- package/dist/esm/src/auth/index.js.map +1 -1
- package/dist/esm/src/auth/transports/SimplifiedFetchTransport.js +67 -55
- package/dist/esm/src/auth/transports/SimplifiedFetchTransport.js.map +1 -1
- package/dist/esm/src/auth/transports/index.js +17 -1
- package/dist/esm/src/auth/transports/index.js.map +1 -1
- package/dist/esm/src/auth/types.js +2 -1
- package/dist/esm/src/auth/utils/__tests/cryptononce.test.js +101 -0
- package/dist/esm/src/auth/utils/__tests/cryptononce.test.js.map +1 -0
- package/dist/esm/src/auth/utils/__tests/getVerifiableCertificates.test.js +106 -0
- package/dist/esm/src/auth/utils/__tests/getVerifiableCertificates.test.js.map +1 -0
- package/dist/esm/src/auth/utils/__tests/validateCertificates.test.js +111 -0
- package/dist/esm/src/auth/utils/__tests/validateCertificates.test.js.map +1 -0
- package/dist/esm/src/auth/utils/createNonce.js +8 -5
- package/dist/esm/src/auth/utils/createNonce.js.map +1 -1
- package/dist/esm/src/auth/utils/getVerifiableCertificates.js +7 -3
- package/dist/esm/src/auth/utils/getVerifiableCertificates.js.map +1 -1
- package/dist/esm/src/auth/utils/index.js +20 -4
- package/dist/esm/src/auth/utils/index.js.map +1 -1
- package/dist/esm/src/auth/utils/validateCertificates.js +7 -3
- package/dist/esm/src/auth/utils/validateCertificates.js.map +1 -1
- package/dist/esm/src/auth/utils/verifyNonce.js +7 -4
- package/dist/esm/src/auth/utils/verifyNonce.js.map +1 -1
- package/dist/esm/src/compat/BSM.js +56 -14
- package/dist/esm/src/compat/BSM.js.map +1 -1
- package/dist/esm/src/compat/ECIES.js +197 -117
- package/dist/esm/src/compat/ECIES.js.map +1 -1
- package/dist/esm/src/compat/HD.js +115 -76
- package/dist/esm/src/compat/HD.js.map +1 -1
- package/dist/esm/src/compat/Mnemonic.js +138 -94
- package/dist/esm/src/compat/Mnemonic.js.map +1 -1
- package/dist/esm/src/compat/Utxo.js +12 -6
- package/dist/esm/src/compat/Utxo.js.map +1 -1
- package/dist/esm/src/compat/__tests/BSM.test.js +69 -0
- package/dist/esm/src/compat/__tests/BSM.test.js.map +1 -0
- package/dist/esm/src/compat/__tests/ECIES.test.js +115 -0
- package/dist/esm/src/compat/__tests/ECIES.test.js.map +1 -0
- package/dist/esm/src/compat/__tests/HD.test.js +336 -0
- package/dist/esm/src/compat/__tests/HD.test.js.map +1 -0
- package/dist/esm/src/compat/__tests/Mnemonic.test.js +150 -0
- package/dist/esm/src/compat/__tests/Mnemonic.test.js.map +1 -0
- package/dist/esm/src/compat/__tests/Mnemonic.vectors.js +175 -0
- package/dist/esm/src/compat/__tests/Mnemonic.vectors.js.map +1 -0
- package/dist/esm/src/compat/bip-39-wordlist-en.js +4 -1
- package/dist/esm/src/compat/bip-39-wordlist-en.js.map +1 -1
- package/dist/esm/src/compat/index.js +48 -5
- package/dist/esm/src/compat/index.js.map +1 -1
- package/dist/esm/src/messages/EncryptedMessage.js +27 -17
- package/dist/esm/src/messages/EncryptedMessage.js.map +1 -1
- package/dist/esm/src/messages/SignedMessage.js +30 -22
- package/dist/esm/src/messages/SignedMessage.js.map +1 -1
- package/dist/esm/src/messages/__tests/EncryptedMessage.test.js +57 -0
- package/dist/esm/src/messages/__tests/EncryptedMessage.test.js.map +1 -0
- package/dist/esm/src/messages/__tests/SignedMessage.test.js +52 -0
- package/dist/esm/src/messages/__tests/SignedMessage.test.js.map +1 -0
- package/dist/esm/src/messages/index.js +38 -2
- package/dist/esm/src/messages/index.js.map +1 -1
- package/dist/esm/src/overlay-tools/LookupResolver.js +32 -17
- package/dist/esm/src/overlay-tools/LookupResolver.js.map +1 -1
- package/dist/esm/src/overlay-tools/OverlayAdminTokenTemplate.js +51 -33
- package/dist/esm/src/overlay-tools/OverlayAdminTokenTemplate.js.map +1 -1
- package/dist/esm/src/overlay-tools/SHIPBroadcaster.js +51 -32
- package/dist/esm/src/overlay-tools/SHIPBroadcaster.js.map +1 -1
- package/dist/esm/src/overlay-tools/__tests/LookupResolver.test.js +1471 -0
- package/dist/esm/src/overlay-tools/__tests/LookupResolver.test.js.map +1 -0
- package/dist/esm/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.js +78 -0
- package/dist/esm/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.js.map +1 -0
- package/dist/esm/src/overlay-tools/__tests/SHIPBroadcaster.test.js +933 -0
- package/dist/esm/src/overlay-tools/__tests/SHIPBroadcaster.test.js.map +1 -0
- package/dist/esm/src/overlay-tools/index.js +28 -5
- package/dist/esm/src/overlay-tools/index.js.map +1 -1
- package/dist/esm/src/primitives/AESGCM.js +39 -26
- package/dist/esm/src/primitives/AESGCM.js.map +1 -1
- package/dist/esm/src/primitives/BasePoint.js +9 -3
- package/dist/esm/src/primitives/BasePoint.js.map +1 -1
- package/dist/esm/src/primitives/BigNumber.js +50 -60
- package/dist/esm/src/primitives/BigNumber.js.map +1 -1
- package/dist/esm/src/primitives/Curve.js +36 -40
- package/dist/esm/src/primitives/Curve.js.map +1 -1
- package/dist/esm/src/primitives/DRBG.js +12 -15
- package/dist/esm/src/primitives/DRBG.js.map +1 -1
- package/dist/esm/src/primitives/ECDSA.js +34 -26
- package/dist/esm/src/primitives/ECDSA.js.map +1 -1
- package/dist/esm/src/primitives/Hash.js +115 -130
- package/dist/esm/src/primitives/Hash.js.map +1 -1
- package/dist/esm/src/primitives/JacobianPoint.js +26 -16
- package/dist/esm/src/primitives/JacobianPoint.js.map +1 -1
- package/dist/esm/src/primitives/K256.js +8 -2
- package/dist/esm/src/primitives/K256.js.map +1 -1
- package/dist/esm/src/primitives/Mersenne.js +11 -5
- package/dist/esm/src/primitives/Mersenne.js.map +1 -1
- package/dist/esm/src/primitives/MontgomoryMethod.js +11 -5
- package/dist/esm/src/primitives/MontgomoryMethod.js.map +1 -1
- package/dist/esm/src/primitives/Point.js +80 -72
- package/dist/esm/src/primitives/Point.js.map +1 -1
- package/dist/esm/src/primitives/Polynomial.js +25 -15
- package/dist/esm/src/primitives/Polynomial.js.map +1 -1
- package/dist/esm/src/primitives/PrivateKey.js +90 -40
- package/dist/esm/src/primitives/PrivateKey.js.map +1 -1
- package/dist/esm/src/primitives/PublicKey.js +29 -23
- package/dist/esm/src/primitives/PublicKey.js.map +1 -1
- package/dist/esm/src/primitives/Random.js +7 -5
- package/dist/esm/src/primitives/Random.js.map +1 -1
- package/dist/esm/src/primitives/ReductionContext.js +18 -12
- package/dist/esm/src/primitives/ReductionContext.js.map +1 -1
- package/dist/esm/src/primitives/Schnorr.js +36 -24
- package/dist/esm/src/primitives/Schnorr.js.map +1 -1
- package/dist/esm/src/primitives/Signature.js +32 -25
- package/dist/esm/src/primitives/Signature.js.map +1 -1
- package/dist/esm/src/primitives/SymmetricKey.js +32 -26
- package/dist/esm/src/primitives/SymmetricKey.js.map +1 -1
- package/dist/esm/src/primitives/TransactionSignature.js +62 -21
- package/dist/esm/src/primitives/TransactionSignature.js.map +1 -1
- package/dist/esm/src/primitives/__tests/AESGCM.test.js +248 -0
- package/dist/esm/src/primitives/__tests/AESGCM.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/BRC42.private.vectors.js +36 -0
- package/dist/esm/src/primitives/__tests/BRC42.private.vectors.js.map +1 -0
- package/dist/esm/src/primitives/__tests/BRC42.public.vectors.js +36 -0
- package/dist/esm/src/primitives/__tests/BRC42.public.vectors.js.map +1 -0
- package/dist/esm/src/primitives/__tests/BigNumber.arithmatic.test.js +501 -0
- package/dist/esm/src/primitives/__tests/BigNumber.arithmatic.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/BigNumber.binary.test.js +185 -0
- package/dist/esm/src/primitives/__tests/BigNumber.binary.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/BigNumber.constructor.test.js +149 -0
- package/dist/esm/src/primitives/__tests/BigNumber.constructor.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/BigNumber.dhGroup.test.js +23 -0
- package/dist/esm/src/primitives/__tests/BigNumber.dhGroup.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/BigNumber.fixtures.js +268 -0
- package/dist/esm/src/primitives/__tests/BigNumber.fixtures.js.map +1 -0
- package/dist/esm/src/primitives/__tests/BigNumber.serializers.test.js +147 -0
- package/dist/esm/src/primitives/__tests/BigNumber.serializers.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/BigNumber.utils.test.js +322 -0
- package/dist/esm/src/primitives/__tests/BigNumber.utils.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/Curve.unit.test.js +145 -0
- package/dist/esm/src/primitives/__tests/Curve.unit.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/DRBG.test.js +22 -0
- package/dist/esm/src/primitives/__tests/DRBG.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/DRBG.vectors.js +170 -0
- package/dist/esm/src/primitives/__tests/DRBG.vectors.js.map +1 -0
- package/dist/esm/src/primitives/__tests/ECDH.test.js +34 -0
- package/dist/esm/src/primitives/__tests/ECDH.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/ECDSA.test.js +89 -0
- package/dist/esm/src/primitives/__tests/ECDSA.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/HMAC.test.js +60 -0
- package/dist/esm/src/primitives/__tests/HMAC.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/Hash.test.js +159 -0
- package/dist/esm/src/primitives/__tests/Hash.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/PBKDF2.vectors.js +122 -0
- package/dist/esm/src/primitives/__tests/PBKDF2.vectors.js.map +1 -0
- package/dist/esm/src/primitives/__tests/PrivateKey.split.test.js +105 -0
- package/dist/esm/src/primitives/__tests/PrivateKey.split.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/PrivateKey.test.js +90 -0
- package/dist/esm/src/primitives/__tests/PrivateKey.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/PublicKey.test.js +83 -0
- package/dist/esm/src/primitives/__tests/PublicKey.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/Random.test.js +19 -0
- package/dist/esm/src/primitives/__tests/Random.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/Reader.test.js +282 -0
- package/dist/esm/src/primitives/__tests/Reader.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/ReductionContext.test.js +223 -0
- package/dist/esm/src/primitives/__tests/ReductionContext.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/Schnorr.test.js +213 -0
- package/dist/esm/src/primitives/__tests/Schnorr.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/SymmetricKey.test.js +51 -0
- package/dist/esm/src/primitives/__tests/SymmetricKey.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/SymmetricKey.vectors.js +43 -0
- package/dist/esm/src/primitives/__tests/SymmetricKey.vectors.js.map +1 -0
- package/dist/esm/src/primitives/__tests/Writer.test.js +176 -0
- package/dist/esm/src/primitives/__tests/Writer.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/bug-31.test.js +32 -0
- package/dist/esm/src/primitives/__tests/bug-31.test.js.map +1 -0
- package/dist/esm/src/primitives/__tests/sighash.vectors.js +3506 -0
- package/dist/esm/src/primitives/__tests/sighash.vectors.js.map +1 -0
- package/dist/esm/src/primitives/__tests/utils.test.js +110 -0
- package/dist/esm/src/primitives/__tests/utils.test.js.map +1 -0
- package/dist/esm/src/primitives/index.js +66 -14
- package/dist/esm/src/primitives/index.js.map +1 -1
- package/dist/esm/src/primitives/utils.js +109 -80
- package/dist/esm/src/primitives/utils.js.map +1 -1
- package/dist/esm/src/script/LockingScript.js +8 -2
- package/dist/esm/src/script/LockingScript.js.map +1 -1
- package/dist/esm/src/script/OP.js +3 -1
- package/dist/esm/src/script/OP.js.map +1 -1
- package/dist/esm/src/script/Script.js +56 -48
- package/dist/esm/src/script/Script.js.map +1 -1
- package/dist/esm/src/script/ScriptChunk.js +2 -1
- package/dist/esm/src/script/ScriptTemplate.js +2 -1
- package/dist/esm/src/script/Spend.js +345 -301
- package/dist/esm/src/script/Spend.js.map +1 -1
- package/dist/esm/src/script/UnlockingScript.js +8 -2
- package/dist/esm/src/script/UnlockingScript.js.map +1 -1
- package/dist/esm/src/script/__tests/Script.test.js +347 -0
- package/dist/esm/src/script/__tests/Script.test.js.map +1 -0
- package/dist/esm/src/script/__tests/Spend.test.js +282 -0
- package/dist/esm/src/script/__tests/Spend.test.js.map +1 -0
- package/dist/esm/src/script/__tests/SpendComplex.test.js +51 -0
- package/dist/esm/src/script/__tests/SpendComplex.test.js.map +1 -0
- package/dist/esm/src/script/__tests/script.invalid.vectors.js +2370 -0
- package/dist/esm/src/script/__tests/script.invalid.vectors.js.map +1 -0
- package/dist/esm/src/script/__tests/script.valid.vectors.js +1181 -0
- package/dist/esm/src/script/__tests/script.valid.vectors.js.map +1 -0
- package/dist/esm/src/script/__tests/spend.valid.vectors.js +2298 -0
- package/dist/esm/src/script/__tests/spend.valid.vectors.js.map +1 -0
- package/dist/esm/src/script/index.js +31 -6
- package/dist/esm/src/script/index.js.map +1 -1
- package/dist/esm/src/script/templates/P2PKH.js +52 -39
- package/dist/esm/src/script/templates/P2PKH.js.map +1 -1
- package/dist/esm/src/script/templates/PushDrop.js +51 -46
- package/dist/esm/src/script/templates/PushDrop.js.map +1 -1
- package/dist/esm/src/script/templates/RPuzzle.js +55 -46
- package/dist/esm/src/script/templates/RPuzzle.js.map +1 -1
- package/dist/esm/src/script/templates/__tests/PushDrop.test.js +161 -0
- package/dist/esm/src/script/templates/__tests/PushDrop.test.js.map +1 -0
- package/dist/esm/src/script/templates/index.js +12 -3
- package/dist/esm/src/script/templates/index.js.map +1 -1
- package/dist/esm/src/totp/__tests/totp.test.js +67 -0
- package/dist/esm/src/totp/__tests/totp.test.js.map +1 -0
- package/dist/esm/src/totp/index.js +17 -1
- package/dist/esm/src/totp/index.js.map +1 -1
- package/dist/esm/src/totp/totp.js +15 -8
- package/dist/esm/src/totp/totp.js.map +1 -1
- package/dist/esm/src/transaction/Beef.js +160 -141
- package/dist/esm/src/transaction/Beef.js.map +1 -1
- package/dist/esm/src/transaction/BeefParty.js +30 -26
- package/dist/esm/src/transaction/BeefParty.js.map +1 -1
- package/dist/esm/src/transaction/BeefTx.js +32 -24
- package/dist/esm/src/transaction/BeefTx.js.map +1 -1
- package/dist/esm/src/transaction/Broadcaster.js +6 -2
- package/dist/esm/src/transaction/Broadcaster.js.map +1 -1
- package/dist/esm/src/transaction/ChainTracker.js +2 -1
- package/dist/esm/src/transaction/FeeModel.js +2 -1
- package/dist/esm/src/transaction/MerklePath.js +31 -23
- package/dist/esm/src/transaction/MerklePath.js.map +1 -1
- package/dist/esm/src/transaction/Transaction.js +96 -158
- package/dist/esm/src/transaction/Transaction.js.map +1 -1
- package/dist/esm/src/transaction/TransactionInput.js +2 -1
- package/dist/esm/src/transaction/TransactionOutput.js +2 -1
- package/dist/esm/src/transaction/__tests/Beef.test.js +393 -0
- package/dist/esm/src/transaction/__tests/Beef.test.js.map +1 -0
- package/dist/esm/src/transaction/__tests/MerklePath.test.js +209 -0
- package/dist/esm/src/transaction/__tests/MerklePath.test.js.map +1 -0
- package/dist/esm/src/transaction/__tests/Transaction.benchmarks.test.js +219 -0
- package/dist/esm/src/transaction/__tests/Transaction.benchmarks.test.js.map +1 -0
- package/dist/esm/src/transaction/__tests/Transaction.test.js +1072 -0
- package/dist/esm/src/transaction/__tests/Transaction.test.js.map +1 -0
- package/dist/esm/src/transaction/__tests/bigtx.vectors.js +7 -0
- package/dist/esm/src/transaction/__tests/bigtx.vectors.js.map +1 -0
- package/dist/esm/src/transaction/__tests/bump.invalid.vectors.js +11 -0
- package/dist/esm/src/transaction/__tests/bump.invalid.vectors.js.map +1 -0
- package/dist/esm/src/transaction/__tests/bump.valid.vectors.js +7 -0
- package/dist/esm/src/transaction/__tests/bump.valid.vectors.js.map +1 -0
- package/dist/esm/src/transaction/__tests/tx.invalid.vectors.js +230 -0
- package/dist/esm/src/transaction/__tests/tx.invalid.vectors.js.map +1 -0
- package/dist/esm/src/transaction/__tests/tx.valid.vectors.js +296 -0
- package/dist/esm/src/transaction/__tests/tx.valid.vectors.js.map +1 -0
- package/dist/esm/src/transaction/broadcasters/ARC.js +46 -36
- package/dist/esm/src/transaction/broadcasters/ARC.js.map +1 -1
- package/dist/esm/src/transaction/broadcasters/DefaultBroadcaster.js +9 -3
- package/dist/esm/src/transaction/broadcasters/DefaultBroadcaster.js.map +1 -1
- package/dist/esm/src/transaction/broadcasters/WhatsOnChainBroadcaster.js +19 -16
- package/dist/esm/src/transaction/broadcasters/WhatsOnChainBroadcaster.js.map +1 -1
- package/dist/esm/src/transaction/broadcasters/__tests/ARC.test.js +246 -0
- package/dist/esm/src/transaction/broadcasters/__tests/ARC.test.js.map +1 -0
- package/dist/esm/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.js +148 -0
- package/dist/esm/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.js.map +1 -0
- package/dist/esm/src/transaction/broadcasters/index.js +12 -3
- package/dist/esm/src/transaction/broadcasters/index.js.map +1 -1
- package/dist/esm/src/transaction/chaintrackers/DefaultChainTracker.js +9 -3
- package/dist/esm/src/transaction/chaintrackers/DefaultChainTracker.js.map +1 -1
- package/dist/esm/src/transaction/chaintrackers/WhatsOnChain.js +12 -9
- package/dist/esm/src/transaction/chaintrackers/WhatsOnChain.js.map +1 -1
- package/dist/esm/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.js +155 -0
- package/dist/esm/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.js.map +1 -0
- package/dist/esm/src/transaction/chaintrackers/index.js +10 -2
- package/dist/esm/src/transaction/chaintrackers/index.js.map +1 -1
- package/dist/esm/src/transaction/fee-models/SatoshisPerKilobyte.js +7 -4
- package/dist/esm/src/transaction/fee-models/SatoshisPerKilobyte.js.map +1 -1
- package/dist/esm/src/transaction/fee-models/index.js +8 -1
- package/dist/esm/src/transaction/fee-models/index.js.map +1 -1
- package/dist/esm/src/transaction/http/DefaultHttpClient.js +15 -12
- package/dist/esm/src/transaction/http/DefaultHttpClient.js.map +1 -1
- package/dist/esm/src/transaction/http/FetchHttpClient.js +9 -3
- package/dist/esm/src/transaction/http/FetchHttpClient.js.map +1 -1
- package/dist/esm/src/transaction/http/HttpClient.js +2 -1
- package/dist/esm/src/transaction/http/NodejsHttpClient.js +15 -9
- package/dist/esm/src/transaction/http/NodejsHttpClient.js.map +1 -1
- package/dist/esm/src/transaction/http/index.js +9 -3
- package/dist/esm/src/transaction/http/index.js.map +1 -1
- package/dist/esm/src/transaction/index.js +32 -6
- package/dist/esm/src/transaction/index.js.map +1 -1
- package/dist/esm/src/wallet/CachedKeyDeriver.js +69 -64
- package/dist/esm/src/wallet/CachedKeyDeriver.js.map +1 -1
- package/dist/esm/src/wallet/KeyDeriver.js +72 -60
- package/dist/esm/src/wallet/KeyDeriver.js.map +1 -1
- package/dist/esm/src/wallet/ProtoWallet.js +33 -16
- package/dist/esm/src/wallet/ProtoWallet.js.map +1 -1
- package/dist/esm/src/wallet/Wallet.interfaces.js +5 -2
- package/dist/esm/src/wallet/Wallet.interfaces.js.map +1 -1
- package/dist/esm/src/wallet/WalletClient.js +22 -15
- package/dist/esm/src/wallet/WalletClient.js.map +1 -1
- package/dist/esm/src/wallet/WalletError.js +6 -2
- package/dist/esm/src/wallet/WalletError.js.map +1 -1
- package/dist/esm/src/wallet/__tests/CachedKeyDeriver.test.js +269 -0
- package/dist/esm/src/wallet/__tests/CachedKeyDeriver.test.js.map +1 -0
- package/dist/esm/src/wallet/__tests/KeyDeriver.test.js +113 -0
- package/dist/esm/src/wallet/__tests/KeyDeriver.test.js.map +1 -0
- package/dist/esm/src/wallet/__tests/ProtoWallet.test.js +475 -0
- package/dist/esm/src/wallet/__tests/ProtoWallet.test.js.map +1 -0
- package/dist/esm/src/wallet/index.js +32 -8
- package/dist/esm/src/wallet/index.js.map +1 -1
- package/dist/esm/src/wallet/substrates/HTTPWalletJSON.js +7 -4
- package/dist/esm/src/wallet/substrates/HTTPWalletJSON.js.map +1 -1
- package/dist/esm/src/wallet/substrates/HTTPWalletWire.js +17 -11
- package/dist/esm/src/wallet/substrates/HTTPWalletWire.js.map +1 -1
- package/dist/esm/src/wallet/substrates/WalletWire.js +2 -1
- package/dist/esm/src/wallet/substrates/WalletWireCalls.js +3 -1
- package/dist/esm/src/wallet/substrates/WalletWireCalls.js.map +1 -1
- package/dist/esm/src/wallet/substrates/WalletWireProcessor.js +1300 -1317
- package/dist/esm/src/wallet/substrates/WalletWireProcessor.js.map +1 -1
- package/dist/esm/src/wallet/substrates/WalletWireTransceiver.js +327 -273
- package/dist/esm/src/wallet/substrates/WalletWireTransceiver.js.map +1 -1
- package/dist/esm/src/wallet/substrates/XDM.js +12 -6
- package/dist/esm/src/wallet/substrates/XDM.js.map +1 -1
- package/dist/esm/src/wallet/substrates/__tests/WalletWire.integration.test.js +1962 -0
- package/dist/esm/src/wallet/substrates/__tests/WalletWire.integration.test.js.map +1 -0
- package/dist/esm/src/wallet/substrates/__tests/XDM.test.js +579 -0
- package/dist/esm/src/wallet/substrates/__tests/XDM.test.js.map +1 -0
- package/dist/esm/src/wallet/substrates/index.js +32 -7
- package/dist/esm/src/wallet/substrates/index.js.map +1 -1
- package/dist/esm/src/wallet/substrates/window.CWI.js +8 -5
- package/dist/esm/src/wallet/substrates/window.CWI.js.map +1 -1
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/dist/types/mod.d.ts +15 -15
- package/dist/types/mod.d.ts.map +1 -1
- package/dist/types/src/auth/Peer.d.ts +14 -14
- package/dist/types/src/auth/Peer.d.ts.map +1 -1
- package/dist/types/src/auth/SessionManager.d.ts +5 -5
- package/dist/types/src/auth/SessionManager.d.ts.map +1 -1
- package/dist/types/src/auth/__tests/Peer.test.d.ts +2 -0
- package/dist/types/src/auth/__tests/Peer.test.d.ts.map +1 -0
- package/dist/types/src/auth/__tests/SessionManager.test.d.ts +2 -0
- package/dist/types/src/auth/__tests/SessionManager.test.d.ts.map +1 -0
- package/dist/types/src/auth/certificates/Certificate.d.ts +2 -2
- package/dist/types/src/auth/certificates/Certificate.d.ts.map +1 -1
- package/dist/types/src/auth/certificates/MasterCertificate.d.ts +2 -2
- package/dist/types/src/auth/certificates/MasterCertificate.d.ts.map +1 -1
- package/dist/types/src/auth/certificates/VerifiableCertificate.d.ts +2 -2
- package/dist/types/src/auth/certificates/VerifiableCertificate.d.ts.map +1 -1
- package/dist/types/src/auth/certificates/__tests/Certificate.test.d.ts +2 -0
- package/dist/types/src/auth/certificates/__tests/Certificate.test.d.ts.map +1 -0
- package/dist/types/src/auth/certificates/__tests/CompletedProtoWallet.d.ts +2 -2
- package/dist/types/src/auth/certificates/__tests/CompletedProtoWallet.d.ts.map +1 -1
- package/dist/types/src/auth/certificates/__tests/MasterCertificate.test.d.ts +2 -0
- package/dist/types/src/auth/certificates/__tests/MasterCertificate.test.d.ts.map +1 -0
- package/dist/types/src/auth/certificates/__tests/VerifiableCertificate.test.d.ts +2 -0
- package/dist/types/src/auth/certificates/__tests/VerifiableCertificate.test.d.ts.map +1 -0
- package/dist/types/src/auth/certificates/index.d.ts +4 -4
- package/dist/types/src/auth/certificates/index.d.ts.map +1 -1
- package/dist/types/src/auth/clients/AuthFetch.d.ts +9 -9
- package/dist/types/src/auth/clients/AuthFetch.d.ts.map +1 -1
- package/dist/types/src/auth/clients/index.d.ts +1 -1
- package/dist/types/src/auth/clients/index.d.ts.map +1 -1
- package/dist/types/src/auth/index.d.ts +7 -7
- package/dist/types/src/auth/index.d.ts.map +1 -1
- package/dist/types/src/auth/transports/SimplifiedFetchTransport.d.ts +1 -1
- package/dist/types/src/auth/transports/SimplifiedFetchTransport.d.ts.map +1 -1
- package/dist/types/src/auth/transports/index.d.ts +1 -1
- package/dist/types/src/auth/transports/index.d.ts.map +1 -1
- package/dist/types/src/auth/types.d.ts +1 -1
- package/dist/types/src/auth/types.d.ts.map +1 -1
- package/dist/types/src/auth/utils/__tests/cryptononce.test.d.ts +2 -0
- package/dist/types/src/auth/utils/__tests/cryptononce.test.d.ts.map +1 -0
- package/dist/types/src/auth/utils/__tests/getVerifiableCertificates.test.d.ts +2 -0
- package/dist/types/src/auth/utils/__tests/getVerifiableCertificates.test.d.ts.map +1 -0
- package/dist/types/src/auth/utils/__tests/validateCertificates.test.d.ts +2 -0
- package/dist/types/src/auth/utils/__tests/validateCertificates.test.d.ts.map +1 -0
- package/dist/types/src/auth/utils/createNonce.d.ts +1 -1
- package/dist/types/src/auth/utils/createNonce.d.ts.map +1 -1
- package/dist/types/src/auth/utils/getVerifiableCertificates.d.ts +3 -3
- package/dist/types/src/auth/utils/getVerifiableCertificates.d.ts.map +1 -1
- package/dist/types/src/auth/utils/index.d.ts +4 -4
- package/dist/types/src/auth/utils/index.d.ts.map +1 -1
- package/dist/types/src/auth/utils/validateCertificates.d.ts +2 -2
- package/dist/types/src/auth/utils/validateCertificates.d.ts.map +1 -1
- package/dist/types/src/auth/utils/verifyNonce.d.ts +1 -1
- package/dist/types/src/auth/utils/verifyNonce.d.ts.map +1 -1
- package/dist/types/src/compat/BSM.d.ts +3 -3
- package/dist/types/src/compat/BSM.d.ts.map +1 -1
- package/dist/types/src/compat/ECIES.d.ts +38 -38
- package/dist/types/src/compat/ECIES.d.ts.map +1 -1
- package/dist/types/src/compat/HD.d.ts +53 -53
- package/dist/types/src/compat/HD.d.ts.map +1 -1
- package/dist/types/src/compat/Mnemonic.d.ts +79 -79
- package/dist/types/src/compat/Mnemonic.d.ts.map +1 -1
- package/dist/types/src/compat/Utxo.d.ts +3 -3
- package/dist/types/src/compat/Utxo.d.ts.map +1 -1
- package/dist/types/src/compat/__tests/BSM.test.d.ts +2 -0
- package/dist/types/src/compat/__tests/BSM.test.d.ts.map +1 -0
- package/dist/types/src/compat/__tests/ECIES.test.d.ts +2 -0
- package/dist/types/src/compat/__tests/ECIES.test.d.ts.map +1 -0
- package/dist/types/src/compat/__tests/HD.test.d.ts +2 -0
- package/dist/types/src/compat/__tests/HD.test.d.ts.map +1 -0
- package/dist/types/src/compat/__tests/Mnemonic.test.d.ts +2 -0
- package/dist/types/src/compat/__tests/Mnemonic.test.d.ts.map +1 -0
- package/dist/types/src/compat/__tests/Mnemonic.vectors.d.ts +11 -0
- package/dist/types/src/compat/__tests/Mnemonic.vectors.d.ts.map +1 -0
- package/dist/types/src/compat/index.d.ts +5 -5
- package/dist/types/src/compat/index.d.ts.map +1 -1
- package/dist/types/src/messages/EncryptedMessage.d.ts +2 -2
- package/dist/types/src/messages/EncryptedMessage.d.ts.map +1 -1
- package/dist/types/src/messages/SignedMessage.d.ts +2 -2
- package/dist/types/src/messages/SignedMessage.d.ts.map +1 -1
- package/dist/types/src/messages/__tests/EncryptedMessage.test.d.ts +2 -0
- package/dist/types/src/messages/__tests/EncryptedMessage.test.d.ts.map +1 -0
- package/dist/types/src/messages/__tests/SignedMessage.test.d.ts +2 -0
- package/dist/types/src/messages/__tests/SignedMessage.test.d.ts.map +1 -0
- package/dist/types/src/messages/index.d.ts +2 -2
- package/dist/types/src/messages/index.d.ts.map +1 -1
- package/dist/types/src/overlay-tools/LookupResolver.d.ts +9 -9
- package/dist/types/src/overlay-tools/LookupResolver.d.ts.map +1 -1
- package/dist/types/src/overlay-tools/OverlayAdminTokenTemplate.d.ts +21 -21
- package/dist/types/src/overlay-tools/OverlayAdminTokenTemplate.d.ts.map +1 -1
- package/dist/types/src/overlay-tools/SHIPBroadcaster.d.ts +16 -16
- package/dist/types/src/overlay-tools/SHIPBroadcaster.d.ts.map +1 -1
- package/dist/types/src/overlay-tools/__tests/LookupResolver.test.d.ts +2 -0
- package/dist/types/src/overlay-tools/__tests/LookupResolver.test.d.ts.map +1 -0
- package/dist/types/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.d.ts +2 -0
- package/dist/types/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.d.ts.map +1 -0
- package/dist/types/src/overlay-tools/__tests/SHIPBroadcaster.test.d.ts +2 -0
- package/dist/types/src/overlay-tools/__tests/SHIPBroadcaster.test.d.ts.map +1 -0
- package/dist/types/src/overlay-tools/index.d.ts +5 -5
- package/dist/types/src/overlay-tools/index.d.ts.map +1 -1
- package/dist/types/src/primitives/BasePoint.d.ts +1 -1
- package/dist/types/src/primitives/BasePoint.d.ts.map +1 -1
- package/dist/types/src/primitives/BigNumber.d.ts +1 -1
- package/dist/types/src/primitives/BigNumber.d.ts.map +1 -1
- package/dist/types/src/primitives/Curve.d.ts +3 -3
- package/dist/types/src/primitives/Curve.d.ts.map +1 -1
- package/dist/types/src/primitives/DRBG.d.ts +1 -1
- package/dist/types/src/primitives/DRBG.d.ts.map +1 -1
- package/dist/types/src/primitives/ECDSA.d.ts +3 -3
- package/dist/types/src/primitives/ECDSA.d.ts.map +1 -1
- package/dist/types/src/primitives/Hash.d.ts.map +1 -1
- package/dist/types/src/primitives/JacobianPoint.d.ts +3 -3
- package/dist/types/src/primitives/JacobianPoint.d.ts.map +1 -1
- package/dist/types/src/primitives/K256.d.ts +2 -2
- package/dist/types/src/primitives/K256.d.ts.map +1 -1
- package/dist/types/src/primitives/Mersenne.d.ts +1 -1
- package/dist/types/src/primitives/Mersenne.d.ts.map +1 -1
- package/dist/types/src/primitives/MontgomoryMethod.d.ts +2 -2
- package/dist/types/src/primitives/MontgomoryMethod.d.ts.map +1 -1
- package/dist/types/src/primitives/Point.d.ts +17 -13
- package/dist/types/src/primitives/Point.d.ts.map +1 -1
- package/dist/types/src/primitives/Polynomial.d.ts +2 -2
- package/dist/types/src/primitives/Polynomial.d.ts.map +1 -1
- package/dist/types/src/primitives/PrivateKey.d.ts +5 -5
- package/dist/types/src/primitives/PrivateKey.d.ts.map +1 -1
- package/dist/types/src/primitives/PublicKey.d.ts +4 -4
- package/dist/types/src/primitives/PublicKey.d.ts.map +1 -1
- package/dist/types/src/primitives/Random.d.ts.map +1 -1
- package/dist/types/src/primitives/ReductionContext.d.ts +2 -2
- package/dist/types/src/primitives/ReductionContext.d.ts.map +1 -1
- package/dist/types/src/primitives/Schnorr.d.ts +17 -17
- package/dist/types/src/primitives/Schnorr.d.ts.map +1 -1
- package/dist/types/src/primitives/Signature.d.ts +2 -2
- package/dist/types/src/primitives/Signature.d.ts.map +1 -1
- package/dist/types/src/primitives/SymmetricKey.d.ts +14 -14
- package/dist/types/src/primitives/SymmetricKey.d.ts.map +1 -1
- package/dist/types/src/primitives/TransactionSignature.d.ts +9 -9
- package/dist/types/src/primitives/TransactionSignature.d.ts.map +1 -1
- package/dist/types/src/primitives/__tests/AESGCM.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/AESGCM.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/BRC42.private.vectors.d.ts +8 -0
- package/dist/types/src/primitives/__tests/BRC42.private.vectors.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/BRC42.public.vectors.d.ts +8 -0
- package/dist/types/src/primitives/__tests/BRC42.public.vectors.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/BigNumber.arithmatic.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/BigNumber.arithmatic.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/BigNumber.binary.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/BigNumber.binary.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/BigNumber.constructor.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/BigNumber.constructor.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/BigNumber.dhGroup.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/BigNumber.dhGroup.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/BigNumber.fixtures.d.ts +15 -0
- package/dist/types/src/primitives/__tests/BigNumber.fixtures.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/BigNumber.serializers.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/BigNumber.serializers.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/BigNumber.utils.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/BigNumber.utils.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/Curve.unit.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/Curve.unit.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/DRBG.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/DRBG.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/DRBG.vectors.d.ts +10 -0
- package/dist/types/src/primitives/__tests/DRBG.vectors.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/ECDH.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/ECDH.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/ECDSA.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/ECDSA.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/HMAC.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/HMAC.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/Hash.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/Hash.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/PBKDF2.vectors.d.ts +68 -0
- package/dist/types/src/primitives/__tests/PBKDF2.vectors.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/PrivateKey.split.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/PrivateKey.split.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/PrivateKey.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/PrivateKey.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/PublicKey.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/PublicKey.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/Random.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/Random.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/Reader.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/Reader.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/ReductionContext.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/ReductionContext.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/Schnorr.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/Schnorr.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/SymmetricKey.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/SymmetricKey.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/SymmetricKey.vectors.d.ts +20 -0
- package/dist/types/src/primitives/__tests/SymmetricKey.vectors.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/Writer.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/Writer.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/bug-31.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/bug-31.test.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/sighash.vectors.d.ts +3 -0
- package/dist/types/src/primitives/__tests/sighash.vectors.d.ts.map +1 -0
- package/dist/types/src/primitives/__tests/utils.test.d.ts +2 -0
- package/dist/types/src/primitives/__tests/utils.test.d.ts.map +1 -0
- package/dist/types/src/primitives/index.d.ts +14 -14
- package/dist/types/src/primitives/index.d.ts.map +1 -1
- package/dist/types/src/primitives/utils.d.ts +1 -1
- package/dist/types/src/primitives/utils.d.ts.map +1 -1
- package/dist/types/src/script/LockingScript.d.ts +1 -1
- package/dist/types/src/script/LockingScript.d.ts.map +1 -1
- package/dist/types/src/script/Script.d.ts +5 -5
- package/dist/types/src/script/Script.d.ts.map +1 -1
- package/dist/types/src/script/ScriptTemplate.d.ts +3 -3
- package/dist/types/src/script/ScriptTemplate.d.ts.map +1 -1
- package/dist/types/src/script/Spend.d.ts +4 -4
- package/dist/types/src/script/Spend.d.ts.map +1 -1
- package/dist/types/src/script/UnlockingScript.d.ts +1 -1
- package/dist/types/src/script/UnlockingScript.d.ts.map +1 -1
- package/dist/types/src/script/__tests/Script.test.d.ts +2 -0
- package/dist/types/src/script/__tests/Script.test.d.ts.map +1 -0
- package/dist/types/src/script/__tests/Spend.test.d.ts +2 -0
- package/dist/types/src/script/__tests/Spend.test.d.ts.map +1 -0
- package/dist/types/src/script/__tests/SpendComplex.test.d.ts +2 -0
- package/dist/types/src/script/__tests/SpendComplex.test.d.ts.map +1 -0
- package/dist/types/src/script/__tests/script.invalid.vectors.d.ts +3 -0
- package/dist/types/src/script/__tests/script.invalid.vectors.d.ts.map +1 -0
- package/dist/types/src/script/__tests/script.valid.vectors.d.ts +3 -0
- package/dist/types/src/script/__tests/script.valid.vectors.d.ts.map +1 -0
- package/dist/types/src/script/__tests/spend.valid.vectors.d.ts +3 -0
- package/dist/types/src/script/__tests/spend.valid.vectors.d.ts.map +1 -0
- package/dist/types/src/script/index.d.ts +7 -7
- package/dist/types/src/script/index.d.ts.map +1 -1
- package/dist/types/src/script/templates/P2PKH.d.ts +7 -7
- package/dist/types/src/script/templates/P2PKH.d.ts.map +1 -1
- package/dist/types/src/script/templates/PushDrop.d.ts +7 -7
- package/dist/types/src/script/templates/PushDrop.d.ts.map +1 -1
- package/dist/types/src/script/templates/RPuzzle.d.ts +9 -9
- package/dist/types/src/script/templates/RPuzzle.d.ts.map +1 -1
- package/dist/types/src/script/templates/__tests/PushDrop.test.d.ts +2 -0
- package/dist/types/src/script/templates/__tests/PushDrop.test.d.ts.map +1 -0
- package/dist/types/src/script/templates/index.d.ts +3 -3
- package/dist/types/src/script/templates/index.d.ts.map +1 -1
- package/dist/types/src/totp/__tests/totp.test.d.ts +2 -0
- package/dist/types/src/totp/__tests/totp.test.d.ts.map +1 -0
- package/dist/types/src/totp/index.d.ts +1 -1
- package/dist/types/src/totp/index.d.ts.map +1 -1
- package/dist/types/src/transaction/Beef.d.ts +96 -96
- package/dist/types/src/transaction/Beef.d.ts.map +1 -1
- package/dist/types/src/transaction/BeefParty.d.ts +23 -23
- package/dist/types/src/transaction/BeefParty.d.ts.map +1 -1
- package/dist/types/src/transaction/BeefTx.d.ts +5 -5
- package/dist/types/src/transaction/BeefTx.d.ts.map +1 -1
- package/dist/types/src/transaction/Broadcaster.d.ts +1 -1
- package/dist/types/src/transaction/Broadcaster.d.ts.map +1 -1
- package/dist/types/src/transaction/ChainTracker.d.ts +2 -2
- package/dist/types/src/transaction/FeeModel.d.ts +1 -1
- package/dist/types/src/transaction/FeeModel.d.ts.map +1 -1
- package/dist/types/src/transaction/MerklePath.d.ts +2 -2
- package/dist/types/src/transaction/MerklePath.d.ts.map +1 -1
- package/dist/types/src/transaction/Transaction.d.ts +11 -19
- package/dist/types/src/transaction/Transaction.d.ts.map +1 -1
- package/dist/types/src/transaction/TransactionInput.d.ts +2 -2
- package/dist/types/src/transaction/TransactionInput.d.ts.map +1 -1
- package/dist/types/src/transaction/TransactionOutput.d.ts +1 -1
- package/dist/types/src/transaction/TransactionOutput.d.ts.map +1 -1
- package/dist/types/src/transaction/__tests/Beef.test.d.ts +2 -0
- package/dist/types/src/transaction/__tests/Beef.test.d.ts.map +1 -0
- package/dist/types/src/transaction/__tests/MerklePath.test.d.ts +2 -0
- package/dist/types/src/transaction/__tests/MerklePath.test.d.ts.map +1 -0
- package/dist/types/src/transaction/__tests/Transaction.benchmarks.test.d.ts +2 -0
- package/dist/types/src/transaction/__tests/Transaction.benchmarks.test.d.ts.map +1 -0
- package/dist/types/src/transaction/__tests/Transaction.test.d.ts +2 -0
- package/dist/types/src/transaction/__tests/Transaction.test.d.ts.map +1 -0
- package/dist/types/src/transaction/__tests/bigtx.vectors.d.ts +6 -0
- package/dist/types/src/transaction/__tests/bigtx.vectors.d.ts.map +1 -0
- package/dist/types/src/transaction/__tests/bump.invalid.vectors.d.ts +6 -0
- package/dist/types/src/transaction/__tests/bump.invalid.vectors.d.ts.map +1 -0
- package/dist/types/src/transaction/__tests/bump.valid.vectors.d.ts +5 -0
- package/dist/types/src/transaction/__tests/bump.valid.vectors.d.ts.map +1 -0
- package/dist/types/src/transaction/__tests/tx.invalid.vectors.d.ts +3 -0
- package/dist/types/src/transaction/__tests/tx.invalid.vectors.d.ts.map +1 -0
- package/dist/types/src/transaction/__tests/tx.valid.vectors.d.ts +3 -0
- package/dist/types/src/transaction/__tests/tx.valid.vectors.d.ts.map +1 -0
- package/dist/types/src/transaction/broadcasters/ARC.d.ts +3 -3
- package/dist/types/src/transaction/broadcasters/ARC.d.ts.map +1 -1
- package/dist/types/src/transaction/broadcasters/DefaultBroadcaster.d.ts +2 -2
- package/dist/types/src/transaction/broadcasters/DefaultBroadcaster.d.ts.map +1 -1
- package/dist/types/src/transaction/broadcasters/WhatsOnChainBroadcaster.d.ts +4 -4
- package/dist/types/src/transaction/broadcasters/WhatsOnChainBroadcaster.d.ts.map +1 -1
- package/dist/types/src/transaction/broadcasters/__tests/ARC.test.d.ts +2 -0
- package/dist/types/src/transaction/broadcasters/__tests/ARC.test.d.ts.map +1 -0
- package/dist/types/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.d.ts +2 -0
- package/dist/types/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.d.ts.map +1 -0
- package/dist/types/src/transaction/broadcasters/index.d.ts +4 -4
- package/dist/types/src/transaction/broadcasters/index.d.ts.map +1 -1
- package/dist/types/src/transaction/chaintrackers/DefaultChainTracker.d.ts +1 -1
- package/dist/types/src/transaction/chaintrackers/DefaultChainTracker.d.ts.map +1 -1
- package/dist/types/src/transaction/chaintrackers/WhatsOnChain.d.ts +3 -3
- package/dist/types/src/transaction/chaintrackers/WhatsOnChain.d.ts.map +1 -1
- package/dist/types/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.d.ts +2 -0
- package/dist/types/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.d.ts.map +1 -0
- package/dist/types/src/transaction/chaintrackers/index.d.ts +3 -3
- package/dist/types/src/transaction/chaintrackers/index.d.ts.map +1 -1
- package/dist/types/src/transaction/fee-models/SatoshisPerKilobyte.d.ts +2 -2
- package/dist/types/src/transaction/fee-models/SatoshisPerKilobyte.d.ts.map +1 -1
- package/dist/types/src/transaction/fee-models/index.d.ts +1 -1
- package/dist/types/src/transaction/fee-models/index.d.ts.map +1 -1
- package/dist/types/src/transaction/http/DefaultHttpClient.d.ts +2 -2
- package/dist/types/src/transaction/http/DefaultHttpClient.d.ts.map +1 -1
- package/dist/types/src/transaction/http/FetchHttpClient.d.ts +6 -6
- package/dist/types/src/transaction/http/FetchHttpClient.d.ts.map +1 -1
- package/dist/types/src/transaction/http/HttpClient.d.ts +4 -4
- package/dist/types/src/transaction/http/HttpClient.d.ts.map +1 -1
- package/dist/types/src/transaction/http/NodejsHttpClient.d.ts +4 -4
- package/dist/types/src/transaction/http/NodejsHttpClient.d.ts.map +1 -1
- package/dist/types/src/transaction/http/index.d.ts +6 -6
- package/dist/types/src/transaction/http/index.d.ts.map +1 -1
- package/dist/types/src/transaction/index.d.ts +10 -10
- package/dist/types/src/transaction/index.d.ts.map +1 -1
- package/dist/types/src/wallet/CachedKeyDeriver.d.ts +61 -61
- package/dist/types/src/wallet/CachedKeyDeriver.d.ts.map +1 -1
- package/dist/types/src/wallet/KeyDeriver.d.ts +80 -80
- package/dist/types/src/wallet/KeyDeriver.d.ts.map +1 -1
- package/dist/types/src/wallet/ProtoWallet.d.ts +3 -3
- package/dist/types/src/wallet/ProtoWallet.d.ts.map +1 -1
- package/dist/types/src/wallet/Wallet.interfaces.d.ts +144 -144
- package/dist/types/src/wallet/Wallet.interfaces.d.ts.map +1 -1
- package/dist/types/src/wallet/WalletClient.d.ts +1 -1
- package/dist/types/src/wallet/WalletClient.d.ts.map +1 -1
- package/dist/types/src/wallet/__tests/CachedKeyDeriver.test.d.ts +2 -0
- package/dist/types/src/wallet/__tests/CachedKeyDeriver.test.d.ts.map +1 -0
- package/dist/types/src/wallet/__tests/KeyDeriver.test.d.ts +2 -0
- package/dist/types/src/wallet/__tests/KeyDeriver.test.d.ts.map +1 -0
- package/dist/types/src/wallet/__tests/ProtoWallet.test.d.ts +2 -0
- package/dist/types/src/wallet/__tests/ProtoWallet.test.d.ts.map +1 -0
- package/dist/types/src/wallet/index.d.ts +8 -8
- package/dist/types/src/wallet/index.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/HTTPWalletJSON.d.ts +1 -1
- package/dist/types/src/wallet/substrates/HTTPWalletJSON.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/HTTPWalletWire.d.ts +1 -1
- package/dist/types/src/wallet/substrates/HTTPWalletWire.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/WalletWire.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/WalletWireCalls.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/WalletWireProcessor.d.ts +2 -2
- package/dist/types/src/wallet/substrates/WalletWireProcessor.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/WalletWireTransceiver.d.ts +10 -10
- package/dist/types/src/wallet/substrates/WalletWireTransceiver.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/XDM.d.ts +2 -2
- package/dist/types/src/wallet/substrates/XDM.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/__tests/WalletWire.integration.test.d.ts +2 -0
- package/dist/types/src/wallet/substrates/__tests/WalletWire.integration.test.d.ts.map +1 -0
- package/dist/types/src/wallet/substrates/__tests/XDM.test.d.ts +5 -0
- package/dist/types/src/wallet/substrates/__tests/XDM.test.d.ts.map +1 -0
- package/dist/types/src/wallet/substrates/index.d.ts +7 -7
- package/dist/types/src/wallet/substrates/index.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/window.CWI.d.ts +19 -19
- package/dist/types/src/wallet/substrates/window.CWI.d.ts.map +1 -1
- package/dist/types/tsconfig.types.tsbuildinfo +1 -1
- package/dist/umd/bundle.js +1 -1
- package/docs/auth.md +55 -51
- package/docs/compat.md +24 -24
- package/docs/messages.md +7 -5
- package/docs/overlay-tools.md +21 -21
- package/docs/primitives.md +239 -242
- package/docs/script.md +31 -31
- package/docs/totp.md +5 -5
- package/docs/transaction.md +76 -78
- package/docs/wallet-substrates.md +6 -6
- package/docs/wallet.md +129 -129
- package/mod.ts +15 -15
- package/package.json +10 -2
- package/src/auth/Peer.ts +217 -72
- package/src/auth/SessionManager.ts +8 -6
- package/src/auth/__tests/Peer.test.ts +314 -159
- package/src/auth/certificates/Certificate.ts +16 -6
- package/src/auth/certificates/MasterCertificate.ts +96 -43
- package/src/auth/certificates/VerifiableCertificate.ts +29 -9
- package/src/auth/certificates/__tests/Certificate.test.ts +160 -146
- package/src/auth/certificates/__tests/CompletedProtoWallet.ts +148 -59
- package/src/auth/certificates/__tests/MasterCertificate.test.ts +65 -41
- package/src/auth/certificates/__tests/VerifiableCertificate.test.ts +47 -31
- package/src/auth/certificates/index.ts +4 -4
- package/src/auth/clients/AuthFetch.ts +316 -231
- package/src/auth/clients/index.ts +1 -1
- package/src/auth/index.ts +7 -7
- package/src/auth/transports/SimplifiedFetchTransport.ts +166 -124
- package/src/auth/transports/index.ts +1 -1
- package/src/auth/types.ts +1 -1
- package/src/auth/utils/__tests/cryptononce.test.ts +52 -25
- package/src/auth/utils/__tests/getVerifiableCertificates.test.ts +64 -38
- package/src/auth/utils/__tests/validateCertificates.test.ts +101 -89
- package/src/auth/utils/createNonce.ts +11 -3
- package/src/auth/utils/getVerifiableCertificates.ts +11 -6
- package/src/auth/utils/index.ts +4 -4
- package/src/auth/utils/validateCertificates.ts +53 -39
- package/src/auth/utils/verifyNonce.ts +6 -2
- package/src/compat/BSM.ts +17 -9
- package/src/compat/ECIES.ts +239 -123
- package/src/compat/HD.ts +82 -63
- package/src/compat/Mnemonic.ts +98 -87
- package/src/compat/Utxo.ts +12 -9
- package/src/compat/__tests/BSM.test.ts +43 -16
- package/src/compat/__tests/ECIES.test.ts +117 -52
- package/src/compat/__tests/HD.test.ts +49 -38
- package/src/compat/__tests/Mnemonic.test.ts +145 -145
- package/src/compat/index.ts +5 -5
- package/src/messages/EncryptedMessage.ts +11 -7
- package/src/messages/SignedMessage.ts +19 -14
- package/src/messages/__tests/EncryptedMessage.test.ts +55 -56
- package/src/messages/__tests/SignedMessage.test.ts +58 -52
- package/src/messages/index.ts +2 -2
- package/src/overlay-tools/LookupResolver.ts +65 -33
- package/src/overlay-tools/OverlayAdminTokenTemplate.ts +52 -27
- package/src/overlay-tools/SHIPBroadcaster.ts +134 -59
- package/src/overlay-tools/__tests/LookupResolver.test.ts +723 -323
- package/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.ts +50 -22
- package/src/overlay-tools/__tests/SHIPBroadcaster.test.ts +607 -290
- package/src/overlay-tools/index.ts +5 -5
- package/src/primitives/BasePoint.ts +1 -1
- package/src/primitives/BigNumber.ts +94 -87
- package/src/primitives/Curve.ts +49 -30
- package/src/primitives/DRBG.ts +10 -12
- package/src/primitives/ECDSA.ts +59 -33
- package/src/primitives/Hash.ts +298 -179
- package/src/primitives/JacobianPoint.ts +55 -21
- package/src/primitives/K256.ts +2 -2
- package/src/primitives/Mersenne.ts +1 -1
- package/src/primitives/MontgomoryMethod.ts +2 -2
- package/src/primitives/Point.ts +193 -113
- package/src/primitives/Polynomial.ts +12 -7
- package/src/primitives/PrivateKey.ts +44 -20
- package/src/primitives/PublicKey.ts +21 -11
- package/src/primitives/Random.ts +7 -5
- package/src/primitives/ReductionContext.ts +4 -4
- package/src/primitives/Schnorr.ts +45 -23
- package/src/primitives/Signature.ts +27 -19
- package/src/primitives/SymmetricKey.ts +17 -17
- package/src/primitives/TransactionSignature.ts +29 -18
- package/src/primitives/__tests/AESGCM.test.ts +635 -329
- package/src/primitives/__tests/BigNumber.arithmatic.test.ts +721 -502
- package/src/primitives/__tests/BigNumber.binary.test.ts +271 -190
- package/src/primitives/__tests/BigNumber.constructor.test.ts +60 -24
- package/src/primitives/__tests/BigNumber.dhGroup.test.ts +19 -15
- package/src/primitives/__tests/BigNumber.serializers.test.ts +183 -157
- package/src/primitives/__tests/BigNumber.utils.test.ts +394 -304
- package/src/primitives/__tests/Curve.unit.test.ts +158 -143
- package/src/primitives/__tests/DRBG.test.ts +13 -13
- package/src/primitives/__tests/ECDH.test.ts +15 -8
- package/src/primitives/__tests/ECDSA.test.ts +63 -57
- package/src/primitives/__tests/HMAC.test.ts +55 -49
- package/src/primitives/__tests/Hash.test.ts +96 -85
- package/src/primitives/__tests/PrivateKey.split.test.ts +29 -9
- package/src/primitives/__tests/PrivateKey.test.ts +53 -50
- package/src/primitives/__tests/PublicKey.test.ts +15 -6
- package/src/primitives/__tests/Random.test.ts +10 -10
- package/src/primitives/__tests/Reader.test.ts +240 -219
- package/src/primitives/__tests/ReductionContext.test.ts +271 -234
- package/src/primitives/__tests/Schnorr.test.ts +252 -242
- package/src/primitives/__tests/SymmetricKey.test.ts +53 -50
- package/src/primitives/__tests/Writer.test.ts +23 -13
- package/src/primitives/__tests/bug-31.test.ts +25 -23
- package/src/primitives/__tests/utils.test.ts +70 -19
- package/src/primitives/index.ts +14 -14
- package/src/primitives/utils.ts +88 -63
- package/src/script/LockingScript.ts +1 -1
- package/src/script/Script.ts +14 -10
- package/src/script/ScriptTemplate.ts +5 -7
- package/src/script/Spend.ts +314 -118
- package/src/script/UnlockingScript.ts +1 -1
- package/src/script/__tests/Script.test.ts +68 -54
- package/src/script/__tests/Spend.test.ts +188 -68
- package/src/script/__tests/SpendComplex.test.ts +36 -26
- package/src/script/__tests/script.valid.vectors.ts +1064 -3100
- package/src/script/index.ts +7 -7
- package/src/script/templates/P2PKH.ts +63 -52
- package/src/script/templates/PushDrop.ts +117 -89
- package/src/script/templates/RPuzzle.ts +72 -54
- package/src/script/templates/__tests/PushDrop.test.ts +146 -40
- package/src/script/templates/index.ts +3 -3
- package/src/totp/__tests/totp.test.ts +39 -39
- package/src/totp/index.ts +1 -1
- package/src/totp/totp.ts +2 -2
- package/src/transaction/Beef.ts +211 -141
- package/src/transaction/BeefParty.ts +35 -27
- package/src/transaction/BeefTx.ts +13 -9
- package/src/transaction/Broadcaster.ts +11 -7
- package/src/transaction/ChainTracker.ts +2 -2
- package/src/transaction/FeeModel.ts +2 -2
- package/src/transaction/MerklePath.ts +81 -37
- package/src/transaction/Transaction.ts +185 -208
- package/src/transaction/TransactionInput.ts +2 -2
- package/src/transaction/TransactionOutput.ts +2 -2
- package/src/transaction/__tests/Beef.test.ts +359 -297
- package/src/transaction/__tests/MerklePath.test.ts +163 -131
- package/src/transaction/__tests/Transaction.benchmarks.test.ts +235 -202
- package/src/transaction/__tests/Transaction.test.ts +746 -459
- package/src/transaction/broadcasters/ARC.ts +120 -94
- package/src/transaction/broadcasters/DefaultBroadcaster.ts +11 -5
- package/src/transaction/broadcasters/WhatsOnChainBroadcaster.ts +46 -33
- package/src/transaction/broadcasters/__tests/ARC.test.ts +77 -45
- package/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.ts +25 -17
- package/src/transaction/broadcasters/index.ts +4 -4
- package/src/transaction/chaintrackers/DefaultChainTracker.ts +4 -4
- package/src/transaction/chaintrackers/WhatsOnChain.ts +53 -38
- package/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.ts +138 -102
- package/src/transaction/chaintrackers/index.ts +3 -3
- package/src/transaction/fee-models/SatoshisPerKilobyte.ts +37 -32
- package/src/transaction/fee-models/index.ts +1 -1
- package/src/transaction/http/DefaultHttpClient.ts +17 -17
- package/src/transaction/http/FetchHttpClient.ts +18 -9
- package/src/transaction/http/HttpClient.ts +30 -25
- package/src/transaction/http/NodejsHttpClient.ts +42 -28
- package/src/transaction/http/index.ts +10 -6
- package/src/transaction/index.ts +14 -10
- package/src/wallet/CachedKeyDeriver.ts +118 -72
- package/src/wallet/KeyDeriver.ts +186 -105
- package/src/wallet/ProtoWallet.ts +53 -17
- package/src/wallet/Wallet.interfaces.ts +158 -149
- package/src/wallet/WalletClient.ts +316 -58
- package/src/wallet/__tests/CachedKeyDeriver.test.ts +83 -27
- package/src/wallet/__tests/KeyDeriver.test.ts +219 -116
- package/src/wallet/__tests/ProtoWallet.test.ts +420 -339
- package/src/wallet/index.ts +8 -8
- package/src/wallet/substrates/HTTPWalletJSON.ts +201 -32
- package/src/wallet/substrates/HTTPWalletWire.ts +30 -26
- package/src/wallet/substrates/WalletWire.ts +1 -1
- package/src/wallet/substrates/WalletWireCalls.ts +3 -3
- package/src/wallet/substrates/WalletWireProcessor.ts +1651 -1515
- package/src/wallet/substrates/WalletWireTransceiver.ts +1424 -854
- package/src/wallet/substrates/XDM.ts +427 -37
- package/src/wallet/substrates/__tests/WalletWire.integration.test.ts +484 -223
- package/src/wallet/substrates/__tests/XDM.test.ts +191 -195
- package/src/wallet/substrates/index.ts +7 -7
- package/src/wallet/substrates/window.CWI.ts +524 -65
|
@@ -1,14 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
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 UnlockingScript_1 = __importDefault(require("../script/UnlockingScript"));
|
|
7
|
+
const LockingScript_1 = __importDefault(require("../script/LockingScript"));
|
|
8
|
+
const utils_1 = require("../primitives/utils");
|
|
9
|
+
const Hash_1 = require("../primitives/Hash");
|
|
10
|
+
const SatoshisPerKilobyte_1 = __importDefault(require("./fee-models/SatoshisPerKilobyte"));
|
|
11
|
+
const Spend_1 = __importDefault(require("../script/Spend"));
|
|
12
|
+
const DefaultBroadcaster_1 = require("./broadcasters/DefaultBroadcaster");
|
|
13
|
+
const DefaultChainTracker_1 = require("./chaintrackers/DefaultChainTracker");
|
|
14
|
+
const Beef_1 = require("./Beef");
|
|
15
|
+
const P2PKH_1 = __importDefault(require("../script/templates/P2PKH"));
|
|
12
16
|
/**
|
|
13
17
|
* Represents a complete Bitcoin transaction. This class encapsulates all the details
|
|
14
18
|
* required for creating, signing, and processing a Bitcoin transaction, including
|
|
@@ -44,7 +48,7 @@ import P2PKH from '../script/templates/P2PKH.js';
|
|
|
44
48
|
* adding inputs and outputs, computing fees, signing the transaction, and
|
|
45
49
|
* generating its binary or hexadecimal representation.
|
|
46
50
|
*/
|
|
47
|
-
|
|
51
|
+
class Transaction {
|
|
48
52
|
version;
|
|
49
53
|
inputs;
|
|
50
54
|
outputs;
|
|
@@ -73,123 +77,49 @@ export default class Transaction {
|
|
|
73
77
|
}
|
|
74
78
|
}
|
|
75
79
|
/**
|
|
76
|
-
* Creates a new transaction, linked to its inputs and their associated merkle paths, from a BEEF
|
|
80
|
+
* Creates a new transaction, linked to its inputs and their associated merkle paths, from a BEEF V1, V2 or Atomic.
|
|
77
81
|
* Optionally, you can provide a specific TXID to retrieve a particular transaction from the BEEF data.
|
|
78
82
|
* If the TXID is provided but not found in the BEEF data, an error will be thrown.
|
|
79
|
-
* If no TXID is provided, the last transaction in the BEEF data is returned.
|
|
83
|
+
* If no TXID is provided, the last transaction in the BEEF data is returned, or the atomic txid.
|
|
80
84
|
* @param beef A binary representation of transactions in BEEF format.
|
|
81
85
|
* @param txid Optional TXID of the transaction to retrieve from the BEEF data.
|
|
82
86
|
* @returns An anchored transaction, linked to its associated inputs populated with merkle paths.
|
|
83
87
|
*/
|
|
84
88
|
static fromBEEF(beef, txid) {
|
|
85
|
-
const
|
|
86
|
-
|
|
87
|
-
// The last transaction in the BEEF data can be used if txid is not provided
|
|
88
|
-
const txids = Object.keys(transactions);
|
|
89
|
-
const lastTXID = txids[txids.length - 1];
|
|
90
|
-
const targetTXID = txid || lastTXID;
|
|
91
|
-
if (!transactions[targetTXID]) {
|
|
92
|
-
throw new Error(`Transaction with TXID ${targetTXID} not found in BEEF data.`);
|
|
93
|
-
}
|
|
94
|
-
this.addPathOrInputs(transactions[targetTXID], transactions, BUMPs);
|
|
95
|
-
return transactions[targetTXID].tx;
|
|
89
|
+
const { tx } = Transaction.fromAnyBeef(beef, txid);
|
|
90
|
+
return tx;
|
|
96
91
|
}
|
|
97
92
|
/**
|
|
98
93
|
* Creates a new transaction from an Atomic BEEF (BRC-95) structure.
|
|
99
|
-
* Extracts the subject transaction and
|
|
100
|
-
* are part of the dependency graph of the subject transaction.
|
|
101
|
-
* Throws errors if the Atomic BEEF data does not strictly adhere to the BRC-95 specification.
|
|
94
|
+
* Extracts the subject transaction and supporting merkle path and source transactions contained in the BEEF data
|
|
102
95
|
*
|
|
103
96
|
* @param beef A binary representation of an Atomic BEEF structure.
|
|
104
97
|
* @returns The subject transaction, linked to its associated inputs populated with merkle paths.
|
|
105
98
|
*/
|
|
106
99
|
static fromAtomicBEEF(beef) {
|
|
107
|
-
const
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
const
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
// To keep track of which transactions were used.
|
|
134
|
-
const unusedTxTxids = new Set();
|
|
135
|
-
for (const txid of Object.keys(transactions))
|
|
136
|
-
unusedTxTxids.add(txid);
|
|
137
|
-
const traverseDependencies = (txid) => {
|
|
138
|
-
unusedTxTxids.delete(txid);
|
|
139
|
-
if (validTxids.has(txid)) {
|
|
140
|
-
return;
|
|
141
|
-
}
|
|
142
|
-
validTxids.add(txid);
|
|
143
|
-
const tx = transactions[txid].tx;
|
|
144
|
-
for (const input of tx.inputs) {
|
|
145
|
-
const inputTxid = input.sourceTXID;
|
|
146
|
-
if (!transactions[inputTxid]) {
|
|
147
|
-
throw new Error(`Input transaction with TXID ${inputTxid} is missing in Atomic BEEF data.`);
|
|
148
|
-
}
|
|
149
|
-
traverseDependencies(inputTxid);
|
|
150
|
-
}
|
|
151
|
-
};
|
|
152
|
-
traverseDependencies(subjectTXID);
|
|
153
|
-
// Check for any unrelated transactions
|
|
154
|
-
for (const txid of unusedTxTxids) {
|
|
155
|
-
throw new Error(`Unrelated transaction with TXID ${txid} found in Atomic BEEF data.`);
|
|
156
|
-
}
|
|
157
|
-
this.addPathOrInputs(transactions[subjectTXID], transactions, BUMPs);
|
|
158
|
-
return transactions[subjectTXID].tx;
|
|
159
|
-
}
|
|
160
|
-
/**
|
|
161
|
-
* Parses BEEF data from a Reader and returns the transactions and BUMPs.
|
|
162
|
-
*
|
|
163
|
-
* @param reader The Reader positioned at the start of BEEF data.
|
|
164
|
-
* @returns An object containing the transactions and BUMPs.
|
|
165
|
-
*/
|
|
166
|
-
static parseBEEFData(reader) {
|
|
167
|
-
// Read the version
|
|
168
|
-
const version = reader.readUInt32LE();
|
|
169
|
-
if (version !== BEEF_V1) {
|
|
170
|
-
throw new Error(`Invalid BEEF version. Expected ${BEEF_V1}, received ${version}.`);
|
|
171
|
-
}
|
|
172
|
-
// Read the BUMPs
|
|
173
|
-
const numberOfBUMPs = reader.readVarIntNum();
|
|
174
|
-
const BUMPs = [];
|
|
175
|
-
for (let i = 0; i < numberOfBUMPs; i++) {
|
|
176
|
-
BUMPs.push(MerklePath.fromReader(reader));
|
|
177
|
-
}
|
|
178
|
-
// Read all transactions into an object
|
|
179
|
-
// The object has keys of TXIDs and values of objects with transactions and BUMP indexes
|
|
180
|
-
const numberOfTransactions = reader.readVarIntNum();
|
|
181
|
-
const transactions = {};
|
|
182
|
-
for (let i = 0; i < numberOfTransactions; i++) {
|
|
183
|
-
const tx = Transaction.fromReader(reader);
|
|
184
|
-
const obj = { tx };
|
|
185
|
-
const txid = tx.id('hex');
|
|
186
|
-
const hasBump = Boolean(reader.readUInt8());
|
|
187
|
-
if (hasBump) {
|
|
188
|
-
obj.pathIndex = reader.readVarIntNum();
|
|
189
|
-
}
|
|
190
|
-
transactions[txid] = obj;
|
|
191
|
-
}
|
|
192
|
-
return { transactions, BUMPs };
|
|
100
|
+
const { tx, txid, beef: b } = Transaction.fromAnyBeef(beef);
|
|
101
|
+
if (txid !== b.atomicTxid) {
|
|
102
|
+
if (b.atomicTxid)
|
|
103
|
+
throw new Error(`Transaction with TXID ${b.atomicTxid} not found in BEEF data.`);
|
|
104
|
+
else
|
|
105
|
+
throw new Error(`beef must conform to BRC-95 and must contain the subject txid.`);
|
|
106
|
+
}
|
|
107
|
+
return tx;
|
|
108
|
+
}
|
|
109
|
+
static fromAnyBeef(beef, txid) {
|
|
110
|
+
const b = Beef_1.Beef.fromBinary(beef);
|
|
111
|
+
if (b.txs.length < 1) {
|
|
112
|
+
throw new Error(`beef must include at least one transaction.`);
|
|
113
|
+
}
|
|
114
|
+
const target = txid || b.atomicTxid || b.txs.slice(-1)[0].txid;
|
|
115
|
+
const tx = b.findAtomicTransaction(target);
|
|
116
|
+
if (!tx) {
|
|
117
|
+
if (txid)
|
|
118
|
+
throw new Error(`Transaction with TXID ${target} not found in BEEF data.`);
|
|
119
|
+
else
|
|
120
|
+
throw new Error(`beef does not contain transaction for atomic txid.`);
|
|
121
|
+
}
|
|
122
|
+
return { tx, beef: b, txid: target };
|
|
193
123
|
}
|
|
194
124
|
/**
|
|
195
125
|
* Creates a new transaction, linked to its inputs and their associated merkle paths, from a EF (BRC-30) structure.
|
|
@@ -197,23 +127,24 @@ export default class Transaction {
|
|
|
197
127
|
* @returns An extended transaction, linked to its associated inputs by locking script and satoshis amounts only.
|
|
198
128
|
*/
|
|
199
129
|
static fromEF(ef) {
|
|
200
|
-
const br = new Reader(ef);
|
|
130
|
+
const br = new utils_1.Reader(ef);
|
|
201
131
|
const version = br.readUInt32LE();
|
|
202
|
-
if (toHex(br.read(6)) !== '0000000000ef')
|
|
132
|
+
if ((0, utils_1.toHex)(br.read(6)) !== '0000000000ef') {
|
|
203
133
|
throw new Error('Invalid EF marker');
|
|
134
|
+
}
|
|
204
135
|
const inputsLength = br.readVarIntNum();
|
|
205
136
|
const inputs = [];
|
|
206
137
|
for (let i = 0; i < inputsLength; i++) {
|
|
207
|
-
const sourceTXID = toHex(br.readReverse(32));
|
|
138
|
+
const sourceTXID = (0, utils_1.toHex)(br.readReverse(32));
|
|
208
139
|
const sourceOutputIndex = br.readUInt32LE();
|
|
209
140
|
const scriptLength = br.readVarIntNum();
|
|
210
141
|
const scriptBin = br.read(scriptLength);
|
|
211
|
-
const unlockingScript =
|
|
142
|
+
const unlockingScript = UnlockingScript_1.default.fromBinary(scriptBin);
|
|
212
143
|
const sequence = br.readUInt32LE();
|
|
213
144
|
const satoshis = br.readUInt64LEBn().toNumber();
|
|
214
145
|
const lockingScriptLength = br.readVarIntNum();
|
|
215
146
|
const lockingScriptBin = br.read(lockingScriptLength);
|
|
216
|
-
const lockingScript =
|
|
147
|
+
const lockingScript = LockingScript_1.default.fromBinary(lockingScriptBin);
|
|
217
148
|
const sourceTransaction = new Transaction(null, [], [], null);
|
|
218
149
|
sourceTransaction.outputs = Array(sourceOutputIndex + 1).fill(null);
|
|
219
150
|
sourceTransaction.outputs[sourceOutputIndex] = {
|
|
@@ -234,7 +165,7 @@ export default class Transaction {
|
|
|
234
165
|
const satoshis = br.readUInt64LEBn().toNumber();
|
|
235
166
|
const scriptLength = br.readVarIntNum();
|
|
236
167
|
const scriptBin = br.read(scriptLength);
|
|
237
|
-
const lockingScript =
|
|
168
|
+
const lockingScript = LockingScript_1.default.fromBinary(scriptBin);
|
|
238
169
|
outputs.push({
|
|
239
170
|
satoshis,
|
|
240
171
|
lockingScript
|
|
@@ -259,7 +190,7 @@ export default class Transaction {
|
|
|
259
190
|
* }
|
|
260
191
|
*/
|
|
261
192
|
static parseScriptOffsets(bin) {
|
|
262
|
-
const br = new Reader(bin);
|
|
193
|
+
const br = new utils_1.Reader(bin);
|
|
263
194
|
const inputs = [];
|
|
264
195
|
const outputs = [];
|
|
265
196
|
br.pos += 4; // version
|
|
@@ -284,11 +215,11 @@ export default class Transaction {
|
|
|
284
215
|
const inputsLength = br.readVarIntNum();
|
|
285
216
|
const inputs = [];
|
|
286
217
|
for (let i = 0; i < inputsLength; i++) {
|
|
287
|
-
const sourceTXID = toHex(br.readReverse(32));
|
|
218
|
+
const sourceTXID = (0, utils_1.toHex)(br.readReverse(32));
|
|
288
219
|
const sourceOutputIndex = br.readUInt32LE();
|
|
289
220
|
const scriptLength = br.readVarIntNum();
|
|
290
221
|
const scriptBin = br.read(scriptLength);
|
|
291
|
-
const unlockingScript =
|
|
222
|
+
const unlockingScript = UnlockingScript_1.default.fromBinary(scriptBin);
|
|
292
223
|
const sequence = br.readUInt32LE();
|
|
293
224
|
inputs.push({
|
|
294
225
|
sourceTXID,
|
|
@@ -303,7 +234,7 @@ export default class Transaction {
|
|
|
303
234
|
const satoshis = br.readUInt64LEBn().toNumber();
|
|
304
235
|
const scriptLength = br.readVarIntNum();
|
|
305
236
|
const scriptBin = br.read(scriptLength);
|
|
306
|
-
const lockingScript =
|
|
237
|
+
const lockingScript = LockingScript_1.default.fromBinary(scriptBin);
|
|
307
238
|
outputs.push({
|
|
308
239
|
satoshis,
|
|
309
240
|
lockingScript
|
|
@@ -320,7 +251,7 @@ export default class Transaction {
|
|
|
320
251
|
* @returns {Transaction} - A new Transaction instance.
|
|
321
252
|
*/
|
|
322
253
|
static fromBinary(bin) {
|
|
323
|
-
const br = new Reader(bin);
|
|
254
|
+
const br = new utils_1.Reader(bin);
|
|
324
255
|
return Transaction.fromReader(br);
|
|
325
256
|
}
|
|
326
257
|
/**
|
|
@@ -331,7 +262,7 @@ export default class Transaction {
|
|
|
331
262
|
* @returns {Transaction} - A new Transaction instance.
|
|
332
263
|
*/
|
|
333
264
|
static fromHex(hex) {
|
|
334
|
-
return Transaction.fromBinary(toArray(hex, 'hex'));
|
|
265
|
+
return Transaction.fromBinary((0, utils_1.toArray)(hex, 'hex'));
|
|
335
266
|
}
|
|
336
267
|
/**
|
|
337
268
|
* Creates a Transaction instance from a hexadecimal string encoded EF.
|
|
@@ -341,7 +272,7 @@ export default class Transaction {
|
|
|
341
272
|
* @returns {Transaction} - A new Transaction instance.
|
|
342
273
|
*/
|
|
343
274
|
static fromHexEF(hex) {
|
|
344
|
-
return Transaction.fromEF(toArray(hex, 'hex'));
|
|
275
|
+
return Transaction.fromEF((0, utils_1.toArray)(hex, 'hex'));
|
|
345
276
|
}
|
|
346
277
|
/**
|
|
347
278
|
* Creates a Transaction instance from a hexadecimal string encoded BEEF.
|
|
@@ -355,7 +286,7 @@ export default class Transaction {
|
|
|
355
286
|
* @returns {Transaction} - A new Transaction instance.
|
|
356
287
|
*/
|
|
357
288
|
static fromHexBEEF(hex, txid) {
|
|
358
|
-
return Transaction.fromBEEF(toArray(hex, 'hex'), txid);
|
|
289
|
+
return Transaction.fromBEEF((0, utils_1.toArray)(hex, 'hex'), txid);
|
|
359
290
|
}
|
|
360
291
|
constructor(version = 1, inputs = [], outputs = [], lockTime = 0, metadata = {}, merklePath) {
|
|
361
292
|
this.version = version;
|
|
@@ -378,7 +309,7 @@ export default class Transaction {
|
|
|
378
309
|
}
|
|
379
310
|
// If the input sequence number hasn't been set, the expectation is that it is final.
|
|
380
311
|
if (typeof input.sequence === 'undefined') {
|
|
381
|
-
input.sequence =
|
|
312
|
+
input.sequence = 0xffffffff;
|
|
382
313
|
}
|
|
383
314
|
this.cachedHash = undefined;
|
|
384
315
|
this.inputs.push(input);
|
|
@@ -391,10 +322,12 @@ export default class Transaction {
|
|
|
391
322
|
addOutput(output) {
|
|
392
323
|
this.cachedHash = undefined;
|
|
393
324
|
if (!output.change) {
|
|
394
|
-
if (typeof output.satoshis === 'undefined')
|
|
325
|
+
if (typeof output.satoshis === 'undefined') {
|
|
395
326
|
throw new Error('either satoshis must be defined or change must be set to true');
|
|
396
|
-
|
|
327
|
+
}
|
|
328
|
+
if (output.satoshis < 0) {
|
|
397
329
|
throw new Error('satoshis must be a positive integer or zero');
|
|
330
|
+
}
|
|
398
331
|
}
|
|
399
332
|
if (!output.lockingScript)
|
|
400
333
|
throw new Error('lockingScript must be defined');
|
|
@@ -408,7 +341,7 @@ export default class Transaction {
|
|
|
408
341
|
*
|
|
409
342
|
*/
|
|
410
343
|
addP2PKHOutput(address, satoshis) {
|
|
411
|
-
const lockingScript = new
|
|
344
|
+
const lockingScript = new P2PKH_1.default().lock(address);
|
|
412
345
|
if (typeof satoshis === 'undefined') {
|
|
413
346
|
return this.addOutput({ lockingScript, change: true });
|
|
414
347
|
}
|
|
@@ -438,7 +371,7 @@ export default class Transaction {
|
|
|
438
371
|
* amongst the change outputs
|
|
439
372
|
*
|
|
440
373
|
*/
|
|
441
|
-
async fee(modelOrFee = new
|
|
374
|
+
async fee(modelOrFee = new SatoshisPerKilobyte_1.default(10), changeDistribution = 'equal') {
|
|
442
375
|
this.cachedHash = undefined;
|
|
443
376
|
if (typeof modelOrFee === 'number') {
|
|
444
377
|
const sats = modelOrFee;
|
|
@@ -449,7 +382,7 @@ export default class Transaction {
|
|
|
449
382
|
const fee = await modelOrFee.computeFee(this);
|
|
450
383
|
const change = this.calculateChange(fee);
|
|
451
384
|
if (change <= 0) {
|
|
452
|
-
this.outputs = this.outputs.filter(output => !output.change);
|
|
385
|
+
this.outputs = this.outputs.filter((output) => !output.change);
|
|
453
386
|
return;
|
|
454
387
|
}
|
|
455
388
|
this.distributeChange(change, changeDistribution);
|
|
@@ -460,7 +393,8 @@ export default class Transaction {
|
|
|
460
393
|
if (typeof input.sourceTransaction !== 'object') {
|
|
461
394
|
throw new Error('Source transactions are required for all inputs during fee computation');
|
|
462
395
|
}
|
|
463
|
-
change +=
|
|
396
|
+
change +=
|
|
397
|
+
input.sourceTransaction.outputs[input.sourceOutputIndex].satoshis;
|
|
464
398
|
}
|
|
465
399
|
change -= fee;
|
|
466
400
|
for (const out of this.outputs) {
|
|
@@ -472,7 +406,7 @@ export default class Transaction {
|
|
|
472
406
|
}
|
|
473
407
|
distributeChange(change, changeDistribution) {
|
|
474
408
|
let distributedChange = 0;
|
|
475
|
-
const changeOutputs = this.outputs.filter(out => out.change);
|
|
409
|
+
const changeOutputs = this.outputs.filter((out) => out.change);
|
|
476
410
|
if (changeDistribution === 'random') {
|
|
477
411
|
distributedChange = this.distributeRandomChange(change, changeOutputs);
|
|
478
412
|
}
|
|
@@ -480,7 +414,8 @@ export default class Transaction {
|
|
|
480
414
|
distributedChange = this.distributeEqualChange(change, changeOutputs);
|
|
481
415
|
}
|
|
482
416
|
if (distributedChange < change) {
|
|
483
|
-
this.outputs[this.outputs.length - 1].satoshis +=
|
|
417
|
+
this.outputs[this.outputs.length - 1].satoshis +=
|
|
418
|
+
change - distributedChange;
|
|
484
419
|
}
|
|
485
420
|
}
|
|
486
421
|
distributeRandomChange(change, changeOutputs) {
|
|
@@ -512,7 +447,7 @@ export default class Transaction {
|
|
|
512
447
|
}
|
|
513
448
|
benfordNumber(min, max) {
|
|
514
449
|
const d = Math.floor(Math.random() * 9) + 1;
|
|
515
|
-
return Math.floor(min + (max - min) * Math.log10(1 + 1 / d) / Math.log10(10));
|
|
450
|
+
return Math.floor(min + ((max - min) * Math.log10(1 + 1 / d)) / Math.log10(10));
|
|
516
451
|
}
|
|
517
452
|
/**
|
|
518
453
|
* Utility method that returns the current fee based on inputs and outputs
|
|
@@ -525,7 +460,8 @@ export default class Transaction {
|
|
|
525
460
|
if (typeof input.sourceTransaction !== 'object') {
|
|
526
461
|
throw new Error('Source transactions or sourceSatoshis are required for all inputs to calculate fee');
|
|
527
462
|
}
|
|
528
|
-
totalIn +=
|
|
463
|
+
totalIn +=
|
|
464
|
+
input.sourceTransaction.outputs[input.sourceOutputIndex].satoshis;
|
|
529
465
|
}
|
|
530
466
|
let totalOut = 0;
|
|
531
467
|
for (const output of this.outputs) {
|
|
@@ -568,7 +504,7 @@ export default class Transaction {
|
|
|
568
504
|
* @param broadcaster The Broadcaster instance wwhere the transaction will be sent
|
|
569
505
|
* @returns A BroadcastResponse or BroadcastFailure from the Broadcaster
|
|
570
506
|
*/
|
|
571
|
-
async broadcast(broadcaster = defaultBroadcaster()) {
|
|
507
|
+
async broadcast(broadcaster = (0, DefaultBroadcaster_1.defaultBroadcaster)()) {
|
|
572
508
|
return await broadcaster.broadcast(this);
|
|
573
509
|
}
|
|
574
510
|
/**
|
|
@@ -577,7 +513,7 @@ export default class Transaction {
|
|
|
577
513
|
* @returns {number[]} - The binary array representation of the transaction.
|
|
578
514
|
*/
|
|
579
515
|
toBinary() {
|
|
580
|
-
const writer = new Writer();
|
|
516
|
+
const writer = new utils_1.Writer();
|
|
581
517
|
writer.writeUInt32LE(this.version);
|
|
582
518
|
writer.writeVarIntNum(this.inputs.length);
|
|
583
519
|
for (const i of this.inputs) {
|
|
@@ -585,7 +521,7 @@ export default class Transaction {
|
|
|
585
521
|
writer.write(i.sourceTransaction.hash());
|
|
586
522
|
}
|
|
587
523
|
else {
|
|
588
|
-
writer.writeReverse(toArray(i.sourceTXID, 'hex'));
|
|
524
|
+
writer.writeReverse((0, utils_1.toArray)(i.sourceTXID, 'hex'));
|
|
589
525
|
}
|
|
590
526
|
writer.writeUInt32LE(i.sourceOutputIndex);
|
|
591
527
|
const scriptBin = i.unlockingScript.toBinary();
|
|
@@ -609,7 +545,7 @@ export default class Transaction {
|
|
|
609
545
|
* @returns {number[]} - The BRC-30 EF representation of the transaction.
|
|
610
546
|
*/
|
|
611
547
|
toEF() {
|
|
612
|
-
const writer = new Writer();
|
|
548
|
+
const writer = new utils_1.Writer();
|
|
613
549
|
writer.writeUInt32LE(this.version);
|
|
614
550
|
writer.write([0, 0, 0, 0, 0, 0xef]);
|
|
615
551
|
writer.writeVarIntNum(this.inputs.length);
|
|
@@ -621,7 +557,7 @@ export default class Transaction {
|
|
|
621
557
|
writer.write(i.sourceTransaction.hash());
|
|
622
558
|
}
|
|
623
559
|
else {
|
|
624
|
-
writer.write(toArray(i.sourceTXID, 'hex').reverse());
|
|
560
|
+
writer.write((0, utils_1.toArray)(i.sourceTXID, 'hex').reverse());
|
|
625
561
|
}
|
|
626
562
|
writer.writeUInt32LE(i.sourceOutputIndex);
|
|
627
563
|
const scriptBin = i.unlockingScript.toBinary();
|
|
@@ -649,7 +585,7 @@ export default class Transaction {
|
|
|
649
585
|
* @returns {string} - The hexadecimal string representation of the transaction EF.
|
|
650
586
|
*/
|
|
651
587
|
toHexEF() {
|
|
652
|
-
return toHex(this.toEF());
|
|
588
|
+
return (0, utils_1.toHex)(this.toEF());
|
|
653
589
|
}
|
|
654
590
|
/**
|
|
655
591
|
* Converts the transaction to a hexadecimal string format.
|
|
@@ -657,7 +593,7 @@ export default class Transaction {
|
|
|
657
593
|
* @returns {string} - The hexadecimal string representation of the transaction.
|
|
658
594
|
*/
|
|
659
595
|
toHex() {
|
|
660
|
-
return toHex(this.toBinary());
|
|
596
|
+
return (0, utils_1.toHex)(this.toBinary());
|
|
661
597
|
}
|
|
662
598
|
/**
|
|
663
599
|
* Converts the transaction to a hexadecimal string BEEF.
|
|
@@ -665,7 +601,7 @@ export default class Transaction {
|
|
|
665
601
|
* @returns {string} - The hexadecimal string representation of the transaction BEEF.
|
|
666
602
|
*/
|
|
667
603
|
toHexBEEF() {
|
|
668
|
-
return toHex(this.toBEEF());
|
|
604
|
+
return (0, utils_1.toHex)(this.toBEEF());
|
|
669
605
|
}
|
|
670
606
|
/**
|
|
671
607
|
* Converts the transaction to a hexadecimal string Atomic BEEF.
|
|
@@ -673,7 +609,7 @@ export default class Transaction {
|
|
|
673
609
|
* @returns {string} - The hexadecimal string representation of the transaction Atomic BEEF.
|
|
674
610
|
*/
|
|
675
611
|
toHexAtomicBEEF() {
|
|
676
|
-
return toHex(this.toAtomicBEEF());
|
|
612
|
+
return (0, utils_1.toHex)(this.toAtomicBEEF());
|
|
677
613
|
}
|
|
678
614
|
/**
|
|
679
615
|
* Calculates the transaction's hash.
|
|
@@ -687,11 +623,11 @@ export default class Transaction {
|
|
|
687
623
|
hash = this.cachedHash;
|
|
688
624
|
}
|
|
689
625
|
else {
|
|
690
|
-
hash = hash256(this.toBinary());
|
|
626
|
+
hash = (0, Hash_1.hash256)(this.toBinary());
|
|
691
627
|
this.cachedHash = hash;
|
|
692
628
|
}
|
|
693
629
|
if (enc === 'hex') {
|
|
694
|
-
return toHex(hash);
|
|
630
|
+
return (0, utils_1.toHex)(hash);
|
|
695
631
|
}
|
|
696
632
|
return hash;
|
|
697
633
|
}
|
|
@@ -705,7 +641,7 @@ export default class Transaction {
|
|
|
705
641
|
const id = [...this.hash()];
|
|
706
642
|
id.reverse();
|
|
707
643
|
if (enc === 'hex') {
|
|
708
|
-
return toHex(id);
|
|
644
|
+
return (0, utils_1.toHex)(id);
|
|
709
645
|
}
|
|
710
646
|
return id;
|
|
711
647
|
}
|
|
@@ -718,7 +654,7 @@ export default class Transaction {
|
|
|
718
654
|
*
|
|
719
655
|
* @example tx.verify(new WhatsOnChain(), new SatoshisPerKilobyte(1))
|
|
720
656
|
*/
|
|
721
|
-
async verify(chainTracker = defaultChainTracker(), feeModel) {
|
|
657
|
+
async verify(chainTracker = (0, DefaultChainTracker_1.defaultChainTracker)(), feeModel) {
|
|
722
658
|
const verifiedTxids = new Set();
|
|
723
659
|
const txQueue = [this];
|
|
724
660
|
while (txQueue.length > 0) {
|
|
@@ -773,7 +709,7 @@ export default class Transaction {
|
|
|
773
709
|
if (typeof input.sourceTXID === 'undefined') {
|
|
774
710
|
input.sourceTXID = sourceTxid;
|
|
775
711
|
}
|
|
776
|
-
const spend = new
|
|
712
|
+
const spend = new Spend_1.default({
|
|
777
713
|
sourceTXID: input.sourceTXID,
|
|
778
714
|
sourceOutputIndex: input.sourceOutputIndex,
|
|
779
715
|
lockingScript: sourceOutput.lockingScript,
|
|
@@ -815,8 +751,8 @@ export default class Transaction {
|
|
|
815
751
|
* @throws Error if there are any missing sourceTransactions unless `allowPartial` is true.
|
|
816
752
|
*/
|
|
817
753
|
toBEEF(allowPartial) {
|
|
818
|
-
const writer = new Writer();
|
|
819
|
-
writer.writeUInt32LE(BEEF_V1);
|
|
754
|
+
const writer = new utils_1.Writer();
|
|
755
|
+
writer.writeUInt32LE(Beef_1.BEEF_V1);
|
|
820
756
|
const BUMPs = [];
|
|
821
757
|
const txs = [];
|
|
822
758
|
// Recursive function to add paths and input transactions for a TX
|
|
@@ -827,7 +763,8 @@ export default class Transaction {
|
|
|
827
763
|
let added = false;
|
|
828
764
|
// If this proof is identical to another one previously added, we use that first. Otherwise, we try to merge it with proofs from the same block.
|
|
829
765
|
for (let i = 0; i < BUMPs.length; i++) {
|
|
830
|
-
if (BUMPs[i] === tx.merklePath) {
|
|
766
|
+
if (BUMPs[i] === tx.merklePath) {
|
|
767
|
+
// Literally the same
|
|
831
768
|
obj.pathIndex = i;
|
|
832
769
|
added = true;
|
|
833
770
|
break;
|
|
@@ -851,7 +788,7 @@ export default class Transaction {
|
|
|
851
788
|
BUMPs.push(tx.merklePath);
|
|
852
789
|
}
|
|
853
790
|
}
|
|
854
|
-
const duplicate = txs.some(x => x.tx.id('hex') === tx.id('hex'));
|
|
791
|
+
const duplicate = txs.some((x) => x.tx.id('hex') === tx.id('hex'));
|
|
855
792
|
if (!duplicate) {
|
|
856
793
|
txs.unshift(obj);
|
|
857
794
|
}
|
|
@@ -897,7 +834,7 @@ export default class Transaction {
|
|
|
897
834
|
* @throws Error if there are any missing sourceTransactions unless `allowPartial` is true.
|
|
898
835
|
*/
|
|
899
836
|
toAtomicBEEF(allowPartial) {
|
|
900
|
-
const writer = new Writer();
|
|
837
|
+
const writer = new utils_1.Writer();
|
|
901
838
|
// Write the Atomic BEEF prefix
|
|
902
839
|
writer.writeUInt32LE(0x01010101);
|
|
903
840
|
// Write the subject TXID (big-endian)
|
|
@@ -908,4 +845,5 @@ export default class Transaction {
|
|
|
908
845
|
return writer.toArray();
|
|
909
846
|
}
|
|
910
847
|
}
|
|
848
|
+
exports.default = Transaction;
|
|
911
849
|
//# sourceMappingURL=Transaction.js.map
|