@bsv/sdk 2.1.0 → 2.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -7
- package/dist/cjs/package.json +1 -1
- package/dist/cjs/src/auth/Peer.js +8 -13
- package/dist/cjs/src/auth/Peer.js.map +1 -1
- package/dist/cjs/src/auth/SessionManager.js +4 -7
- package/dist/cjs/src/auth/SessionManager.js.map +1 -1
- package/dist/cjs/src/auth/certificates/MasterCertificate.js +1 -1
- package/dist/cjs/src/auth/certificates/MasterCertificate.js.map +1 -1
- package/dist/cjs/src/auth/certificates/__tests/CompletedProtoWallet.js +1 -1
- package/dist/cjs/src/auth/certificates/__tests/CompletedProtoWallet.js.map +1 -1
- package/dist/cjs/src/auth/clients/AuthFetch.js +32 -32
- package/dist/cjs/src/auth/clients/AuthFetch.js.map +1 -1
- package/dist/cjs/src/auth/transports/SimplifiedFetchTransport.js +4 -4
- package/dist/cjs/src/auth/transports/SimplifiedFetchTransport.js.map +1 -1
- package/dist/cjs/src/compat/ECIES.js +29 -34
- package/dist/cjs/src/compat/ECIES.js.map +1 -1
- package/dist/cjs/src/compat/HD.js +9 -4
- package/dist/cjs/src/compat/HD.js.map +1 -1
- package/dist/cjs/src/compat/Mnemonic.js +12 -12
- package/dist/cjs/src/compat/Mnemonic.js.map +1 -1
- package/dist/cjs/src/identity/ContactsManager.js +212 -234
- package/dist/cjs/src/identity/ContactsManager.js.map +1 -1
- package/dist/cjs/src/identity/IdentityClient.js +199 -63
- package/dist/cjs/src/identity/IdentityClient.js.map +1 -1
- package/dist/cjs/src/kvstore/GlobalKVStore.js +30 -31
- package/dist/cjs/src/kvstore/GlobalKVStore.js.map +1 -1
- package/dist/cjs/src/kvstore/LocalKVStore.js +9 -9
- package/dist/cjs/src/kvstore/LocalKVStore.js.map +1 -1
- package/dist/cjs/src/kvstore/kvStoreInterpreter.js +2 -2
- package/dist/cjs/src/kvstore/kvStoreInterpreter.js.map +1 -1
- package/dist/cjs/src/messages/SignedMessage.js +1 -1
- package/dist/cjs/src/messages/SignedMessage.js.map +1 -1
- package/dist/cjs/src/overlay-tools/Historian.js +1 -1
- package/dist/cjs/src/overlay-tools/Historian.js.map +1 -1
- package/dist/cjs/src/overlay-tools/LookupResolver.js +213 -93
- package/dist/cjs/src/overlay-tools/LookupResolver.js.map +1 -1
- package/dist/cjs/src/overlay-tools/SHIPBroadcaster.js +75 -146
- package/dist/cjs/src/overlay-tools/SHIPBroadcaster.js.map +1 -1
- package/dist/cjs/src/primitives/AESGCM.js +2 -2
- package/dist/cjs/src/primitives/AESGCM.js.map +1 -1
- package/dist/cjs/src/primitives/BigNumber.js +164 -148
- package/dist/cjs/src/primitives/BigNumber.js.map +1 -1
- package/dist/cjs/src/primitives/Curve.js +17 -15
- package/dist/cjs/src/primitives/Curve.js.map +1 -1
- package/dist/cjs/src/primitives/ECDSA.js +12 -7
- package/dist/cjs/src/primitives/ECDSA.js.map +1 -1
- package/dist/cjs/src/primitives/Hash.js +312 -105
- package/dist/cjs/src/primitives/Hash.js.map +1 -1
- package/dist/cjs/src/primitives/JacobianPoint.js +8 -8
- package/dist/cjs/src/primitives/JacobianPoint.js.map +1 -1
- package/dist/cjs/src/primitives/K256.js +3 -3
- package/dist/cjs/src/primitives/K256.js.map +1 -1
- package/dist/cjs/src/primitives/Point.js +36 -40
- package/dist/cjs/src/primitives/Point.js.map +1 -1
- package/dist/cjs/src/primitives/PrivateKey.js +4 -4
- package/dist/cjs/src/primitives/PrivateKey.js.map +1 -1
- package/dist/cjs/src/primitives/PublicKey.js +4 -4
- package/dist/cjs/src/primitives/PublicKey.js.map +1 -1
- package/dist/cjs/src/primitives/Random.js +10 -14
- package/dist/cjs/src/primitives/Random.js.map +1 -1
- package/dist/cjs/src/primitives/ReaderUint8Array.js +6 -6
- package/dist/cjs/src/primitives/ReaderUint8Array.js.map +1 -1
- package/dist/cjs/src/primitives/Schnorr.js +2 -2
- package/dist/cjs/src/primitives/Schnorr.js.map +1 -1
- package/dist/cjs/src/primitives/Secp256r1.js +2 -1
- package/dist/cjs/src/primitives/Secp256r1.js.map +1 -1
- package/dist/cjs/src/primitives/Signature.js +8 -8
- package/dist/cjs/src/primitives/Signature.js.map +1 -1
- package/dist/cjs/src/primitives/SymmetricKey.js +123 -1
- package/dist/cjs/src/primitives/SymmetricKey.js.map +1 -1
- package/dist/cjs/src/primitives/TransactionSignature.js +20 -21
- package/dist/cjs/src/primitives/TransactionSignature.js.map +1 -1
- package/dist/cjs/src/primitives/utils.js +39 -46
- package/dist/cjs/src/primitives/utils.js.map +1 -1
- package/dist/cjs/src/registry/RegistryClient.js +31 -23
- package/dist/cjs/src/registry/RegistryClient.js.map +1 -1
- package/dist/cjs/src/remittance/RemittanceManager.js +19 -18
- package/dist/cjs/src/remittance/RemittanceManager.js.map +1 -1
- package/dist/cjs/src/remittance/modules/BasicBRC29.js.map +1 -1
- package/dist/cjs/src/script/Script.js +93 -170
- package/dist/cjs/src/script/Script.js.map +1 -1
- package/dist/cjs/src/script/ScriptEvaluationError.js +2 -2
- package/dist/cjs/src/script/ScriptEvaluationError.js.map +1 -1
- package/dist/cjs/src/script/Spend.js +14 -12
- package/dist/cjs/src/script/Spend.js.map +1 -1
- package/dist/cjs/src/script/templates/PushDrop.js +22 -18
- package/dist/cjs/src/script/templates/PushDrop.js.map +1 -1
- package/dist/cjs/src/script/templates/RPuzzle.js +2 -4
- package/dist/cjs/src/script/templates/RPuzzle.js.map +1 -1
- package/dist/cjs/src/storage/StorageDownloader.js +42 -9
- package/dist/cjs/src/storage/StorageDownloader.js.map +1 -1
- package/dist/cjs/src/totp/totp.js +1 -1
- package/dist/cjs/src/totp/totp.js.map +1 -1
- package/dist/cjs/src/transaction/Beef.js +239 -192
- package/dist/cjs/src/transaction/Beef.js.map +1 -1
- package/dist/cjs/src/transaction/BeefConstants.js +19 -0
- package/dist/cjs/src/transaction/BeefConstants.js.map +1 -0
- package/dist/cjs/src/transaction/BeefTx.js +12 -12
- package/dist/cjs/src/transaction/BeefTx.js.map +1 -1
- package/dist/cjs/src/transaction/MerklePath.js +4 -4
- package/dist/cjs/src/transaction/MerklePath.js.map +1 -1
- package/dist/cjs/src/transaction/Transaction.js +49 -52
- package/dist/cjs/src/transaction/Transaction.js.map +1 -1
- package/dist/cjs/src/transaction/fee-models/SatoshisPerKilobyte.js +1 -1
- package/dist/cjs/src/transaction/fee-models/SatoshisPerKilobyte.js.map +1 -1
- package/dist/cjs/src/transaction/http/BinaryFetchClient.js +9 -9
- package/dist/cjs/src/transaction/http/BinaryFetchClient.js.map +1 -1
- package/dist/cjs/src/transaction/http/DefaultHttpClient.js +9 -9
- package/dist/cjs/src/transaction/http/DefaultHttpClient.js.map +1 -1
- package/dist/cjs/src/wallet/CachedKeyDeriver.js +1 -1
- package/dist/cjs/src/wallet/CachedKeyDeriver.js.map +1 -1
- package/dist/cjs/src/wallet/WalletClient.js.map +1 -1
- package/dist/cjs/src/wallet/WalletError.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/HTTPWalletJSON.js +5 -4
- package/dist/cjs/src/wallet/substrates/HTTPWalletJSON.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/ReactNativeWebView.js +9 -9
- package/dist/cjs/src/wallet/substrates/ReactNativeWebView.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/WalletWireProcessor.js +92 -92
- package/dist/cjs/src/wallet/substrates/WalletWireProcessor.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/WalletWireTransceiver.js +387 -711
- package/dist/cjs/src/wallet/substrates/WalletWireTransceiver.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/XDM.js +4 -4
- package/dist/cjs/src/wallet/substrates/XDM.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/window.CWI.js +2 -2
- package/dist/cjs/src/wallet/substrates/window.CWI.js.map +1 -1
- package/dist/cjs/src/wallet/validationHelpers.js +9 -9
- package/dist/cjs/src/wallet/validationHelpers.js.map +1 -1
- package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/esm/src/auth/Peer.js +25 -13
- package/dist/esm/src/auth/Peer.js.map +1 -1
- package/dist/esm/src/auth/SessionManager.js +4 -7
- package/dist/esm/src/auth/SessionManager.js.map +1 -1
- package/dist/esm/src/auth/certificates/MasterCertificate.js +1 -1
- package/dist/esm/src/auth/certificates/MasterCertificate.js.map +1 -1
- package/dist/esm/src/auth/certificates/__tests/CompletedProtoWallet.js +1 -1
- package/dist/esm/src/auth/certificates/__tests/CompletedProtoWallet.js.map +1 -1
- package/dist/esm/src/auth/clients/AuthFetch.js +32 -32
- package/dist/esm/src/auth/clients/AuthFetch.js.map +1 -1
- package/dist/esm/src/auth/transports/SimplifiedFetchTransport.js +4 -4
- package/dist/esm/src/auth/transports/SimplifiedFetchTransport.js.map +1 -1
- package/dist/esm/src/compat/ECIES.js +29 -34
- package/dist/esm/src/compat/ECIES.js.map +1 -1
- package/dist/esm/src/compat/HD.js +9 -4
- package/dist/esm/src/compat/HD.js.map +1 -1
- package/dist/esm/src/compat/Mnemonic.js +12 -12
- package/dist/esm/src/compat/Mnemonic.js.map +1 -1
- package/dist/esm/src/identity/ContactsManager.js +212 -234
- package/dist/esm/src/identity/ContactsManager.js.map +1 -1
- package/dist/esm/src/identity/IdentityClient.js +199 -63
- package/dist/esm/src/identity/IdentityClient.js.map +1 -1
- package/dist/esm/src/kvstore/GlobalKVStore.js +30 -31
- package/dist/esm/src/kvstore/GlobalKVStore.js.map +1 -1
- package/dist/esm/src/kvstore/LocalKVStore.js +9 -9
- package/dist/esm/src/kvstore/LocalKVStore.js.map +1 -1
- package/dist/esm/src/kvstore/kvStoreInterpreter.js +2 -2
- package/dist/esm/src/kvstore/kvStoreInterpreter.js.map +1 -1
- package/dist/esm/src/messages/SignedMessage.js +1 -1
- package/dist/esm/src/messages/SignedMessage.js.map +1 -1
- package/dist/esm/src/overlay-tools/Historian.js +1 -1
- package/dist/esm/src/overlay-tools/Historian.js.map +1 -1
- package/dist/esm/src/overlay-tools/LookupResolver.js +213 -93
- package/dist/esm/src/overlay-tools/LookupResolver.js.map +1 -1
- package/dist/esm/src/overlay-tools/SHIPBroadcaster.js +74 -146
- package/dist/esm/src/overlay-tools/SHIPBroadcaster.js.map +1 -1
- package/dist/esm/src/primitives/AESGCM.js +2 -2
- package/dist/esm/src/primitives/AESGCM.js.map +1 -1
- package/dist/esm/src/primitives/BigNumber.js +167 -154
- package/dist/esm/src/primitives/BigNumber.js.map +1 -1
- package/dist/esm/src/primitives/Curve.js +17 -15
- package/dist/esm/src/primitives/Curve.js.map +1 -1
- package/dist/esm/src/primitives/ECDSA.js +12 -7
- package/dist/esm/src/primitives/ECDSA.js.map +1 -1
- package/dist/esm/src/primitives/Hash.js +316 -105
- package/dist/esm/src/primitives/Hash.js.map +1 -1
- package/dist/esm/src/primitives/JacobianPoint.js +8 -8
- package/dist/esm/src/primitives/JacobianPoint.js.map +1 -1
- package/dist/esm/src/primitives/K256.js +3 -3
- package/dist/esm/src/primitives/K256.js.map +1 -1
- package/dist/esm/src/primitives/Point.js +36 -40
- package/dist/esm/src/primitives/Point.js.map +1 -1
- package/dist/esm/src/primitives/PrivateKey.js +4 -4
- package/dist/esm/src/primitives/PrivateKey.js.map +1 -1
- package/dist/esm/src/primitives/PublicKey.js +4 -4
- package/dist/esm/src/primitives/PublicKey.js.map +1 -1
- package/dist/esm/src/primitives/Random.js +10 -14
- package/dist/esm/src/primitives/Random.js.map +1 -1
- package/dist/esm/src/primitives/ReaderUint8Array.js +6 -6
- package/dist/esm/src/primitives/ReaderUint8Array.js.map +1 -1
- package/dist/esm/src/primitives/Schnorr.js +1 -1
- package/dist/esm/src/primitives/Schnorr.js.map +1 -1
- package/dist/esm/src/primitives/Secp256r1.js +2 -1
- package/dist/esm/src/primitives/Secp256r1.js.map +1 -1
- package/dist/esm/src/primitives/Signature.js +8 -8
- package/dist/esm/src/primitives/Signature.js.map +1 -1
- package/dist/esm/src/primitives/SymmetricKey.js +123 -1
- package/dist/esm/src/primitives/SymmetricKey.js.map +1 -1
- package/dist/esm/src/primitives/TransactionSignature.js +20 -21
- package/dist/esm/src/primitives/TransactionSignature.js.map +1 -1
- package/dist/esm/src/primitives/utils.js +39 -48
- package/dist/esm/src/primitives/utils.js.map +1 -1
- package/dist/esm/src/registry/RegistryClient.js +31 -23
- package/dist/esm/src/registry/RegistryClient.js.map +1 -1
- package/dist/esm/src/remittance/RemittanceManager.js +19 -18
- package/dist/esm/src/remittance/RemittanceManager.js.map +1 -1
- package/dist/esm/src/remittance/modules/BasicBRC29.js.map +1 -1
- package/dist/esm/src/script/Script.js +93 -170
- package/dist/esm/src/script/Script.js.map +1 -1
- package/dist/esm/src/script/ScriptEvaluationError.js +2 -2
- package/dist/esm/src/script/ScriptEvaluationError.js.map +1 -1
- package/dist/esm/src/script/Spend.js +14 -12
- package/dist/esm/src/script/Spend.js.map +1 -1
- package/dist/esm/src/script/templates/PushDrop.js +4 -3
- package/dist/esm/src/script/templates/PushDrop.js.map +1 -1
- package/dist/esm/src/script/templates/RPuzzle.js +2 -4
- package/dist/esm/src/script/templates/RPuzzle.js.map +1 -1
- package/dist/esm/src/storage/StorageDownloader.js +1 -1
- package/dist/esm/src/storage/StorageDownloader.js.map +1 -1
- package/dist/esm/src/totp/totp.js +1 -1
- package/dist/esm/src/totp/totp.js.map +1 -1
- package/dist/esm/src/transaction/Beef.js +229 -186
- package/dist/esm/src/transaction/Beef.js.map +1 -1
- package/dist/esm/src/transaction/BeefConstants.js +16 -0
- package/dist/esm/src/transaction/BeefConstants.js.map +1 -0
- package/dist/esm/src/transaction/BeefTx.js +3 -3
- package/dist/esm/src/transaction/BeefTx.js.map +1 -1
- package/dist/esm/src/transaction/MerklePath.js +4 -4
- package/dist/esm/src/transaction/MerklePath.js.map +1 -1
- package/dist/esm/src/transaction/Transaction.js +49 -52
- package/dist/esm/src/transaction/Transaction.js.map +1 -1
- package/dist/esm/src/transaction/fee-models/SatoshisPerKilobyte.js +1 -1
- package/dist/esm/src/transaction/fee-models/SatoshisPerKilobyte.js.map +1 -1
- package/dist/esm/src/transaction/http/BinaryFetchClient.js +9 -9
- package/dist/esm/src/transaction/http/BinaryFetchClient.js.map +1 -1
- package/dist/esm/src/transaction/http/DefaultHttpClient.js +9 -9
- package/dist/esm/src/transaction/http/DefaultHttpClient.js.map +1 -1
- package/dist/esm/src/wallet/CachedKeyDeriver.js +1 -1
- package/dist/esm/src/wallet/CachedKeyDeriver.js.map +1 -1
- package/dist/esm/src/wallet/WalletClient.js.map +1 -1
- package/dist/esm/src/wallet/WalletError.js.map +1 -1
- package/dist/esm/src/wallet/substrates/HTTPWalletJSON.js +5 -4
- package/dist/esm/src/wallet/substrates/HTTPWalletJSON.js.map +1 -1
- package/dist/esm/src/wallet/substrates/ReactNativeWebView.js +9 -9
- package/dist/esm/src/wallet/substrates/ReactNativeWebView.js.map +1 -1
- package/dist/esm/src/wallet/substrates/WalletWireProcessor.js +92 -92
- package/dist/esm/src/wallet/substrates/WalletWireProcessor.js.map +1 -1
- package/dist/esm/src/wallet/substrates/WalletWireTransceiver.js +387 -711
- package/dist/esm/src/wallet/substrates/WalletWireTransceiver.js.map +1 -1
- package/dist/esm/src/wallet/substrates/XDM.js +4 -4
- package/dist/esm/src/wallet/substrates/XDM.js.map +1 -1
- package/dist/esm/src/wallet/substrates/window.CWI.js +2 -2
- package/dist/esm/src/wallet/substrates/window.CWI.js.map +1 -1
- package/dist/esm/src/wallet/validationHelpers.js +9 -9
- package/dist/esm/src/wallet/validationHelpers.js.map +1 -1
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/dist/types/src/auth/Peer.d.ts +13 -0
- package/dist/types/src/auth/Peer.d.ts.map +1 -1
- package/dist/types/src/auth/SessionManager.d.ts.map +1 -1
- package/dist/types/src/auth/clients/AuthFetch.d.ts.map +1 -1
- package/dist/types/src/compat/ECIES.d.ts.map +1 -1
- package/dist/types/src/compat/HD.d.ts.map +1 -1
- package/dist/types/src/identity/ContactsManager.d.ts +31 -2
- package/dist/types/src/identity/ContactsManager.d.ts.map +1 -1
- package/dist/types/src/identity/IdentityClient.d.ts +75 -10
- package/dist/types/src/identity/IdentityClient.d.ts.map +1 -1
- package/dist/types/src/kvstore/GlobalKVStore.d.ts.map +1 -1
- package/dist/types/src/overlay-tools/LookupResolver.d.ts +73 -2
- package/dist/types/src/overlay-tools/LookupResolver.d.ts.map +1 -1
- package/dist/types/src/overlay-tools/SHIPBroadcaster.d.ts +18 -3
- package/dist/types/src/overlay-tools/SHIPBroadcaster.d.ts.map +1 -1
- package/dist/types/src/primitives/BigNumber.d.ts +13 -3
- package/dist/types/src/primitives/BigNumber.d.ts.map +1 -1
- package/dist/types/src/primitives/Curve.d.ts.map +1 -1
- package/dist/types/src/primitives/ECDSA.d.ts.map +1 -1
- package/dist/types/src/primitives/Hash.d.ts +22 -17
- package/dist/types/src/primitives/Hash.d.ts.map +1 -1
- package/dist/types/src/primitives/JacobianPoint.d.ts +3 -1
- package/dist/types/src/primitives/JacobianPoint.d.ts.map +1 -1
- package/dist/types/src/primitives/Point.d.ts.map +1 -1
- package/dist/types/src/primitives/Random.d.ts +2 -2
- package/dist/types/src/primitives/Random.d.ts.map +1 -1
- package/dist/types/src/primitives/ReaderUint8Array.d.ts.map +1 -1
- package/dist/types/src/primitives/Schnorr.d.ts +2 -1
- package/dist/types/src/primitives/Schnorr.d.ts.map +1 -1
- package/dist/types/src/primitives/Secp256r1.d.ts.map +1 -1
- package/dist/types/src/primitives/SymmetricKey.d.ts.map +1 -1
- package/dist/types/src/primitives/utils.d.ts +2 -4
- package/dist/types/src/primitives/utils.d.ts.map +1 -1
- package/dist/types/src/registry/RegistryClient.d.ts.map +1 -1
- package/dist/types/src/remittance/RemittanceManager.d.ts.map +1 -1
- package/dist/types/src/remittance/modules/BasicBRC29.d.ts.map +1 -1
- package/dist/types/src/script/Script.d.ts +15 -8
- package/dist/types/src/script/Script.d.ts.map +1 -1
- package/dist/types/src/script/Spend.d.ts.map +1 -1
- package/dist/types/src/script/templates/PushDrop.d.ts +3 -1
- package/dist/types/src/script/templates/PushDrop.d.ts.map +1 -1
- package/dist/types/src/script/templates/RPuzzle.d.ts.map +1 -1
- package/dist/types/src/transaction/Beef.d.ts +46 -8
- package/dist/types/src/transaction/Beef.d.ts.map +1 -1
- package/dist/types/src/transaction/BeefConstants.d.ts +15 -0
- package/dist/types/src/transaction/BeefConstants.d.ts.map +1 -0
- package/dist/types/src/transaction/Transaction.d.ts.map +1 -1
- package/dist/types/src/wallet/CachedKeyDeriver.d.ts.map +1 -1
- package/dist/types/src/wallet/KeyDeriver.d.ts +1 -1
- package/dist/types/src/wallet/KeyDeriver.d.ts.map +1 -1
- package/dist/types/src/wallet/Wallet.interfaces.d.ts +18 -3
- package/dist/types/src/wallet/Wallet.interfaces.d.ts.map +1 -1
- package/dist/types/src/wallet/WalletClient.d.ts +8 -8
- package/dist/types/src/wallet/WalletClient.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/HTTPWalletJSON.d.ts +7 -7
- package/dist/types/src/wallet/substrates/HTTPWalletJSON.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/WalletWireTransceiver.d.ts +36 -7
- package/dist/types/src/wallet/substrates/WalletWireTransceiver.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/window.CWI.d.ts +9 -9
- 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 +3 -3
- package/package.json +1 -1
- package/src/auth/Peer.ts +26 -13
- package/src/auth/SessionManager.ts +4 -7
- package/src/auth/certificates/MasterCertificate.ts +1 -1
- package/src/auth/certificates/__tests/CompletedProtoWallet.ts +1 -1
- package/src/auth/clients/AuthFetch.ts +41 -41
- package/src/auth/transports/SimplifiedFetchTransport.ts +4 -4
- package/src/compat/ECIES.ts +29 -34
- package/src/compat/HD.ts +10 -5
- package/src/compat/Mnemonic.ts +11 -11
- package/src/compat/__tests/HD.test.ts +19 -0
- package/src/identity/ContactsManager.ts +236 -258
- package/src/identity/IdentityClient.ts +244 -71
- package/src/identity/__tests/IdentityClient.additional.test.ts +150 -1
- package/src/identity/__tests/IdentityClient.test.ts +27 -3
- package/src/kvstore/GlobalKVStore.ts +31 -32
- package/src/kvstore/LocalKVStore.ts +8 -8
- package/src/kvstore/kvStoreInterpreter.ts +2 -2
- package/src/messages/SignedMessage.ts +1 -1
- package/src/overlay-tools/Historian.ts +1 -1
- package/src/overlay-tools/LookupResolver.ts +264 -90
- package/src/overlay-tools/SHIPBroadcaster.ts +92 -168
- package/src/primitives/AESGCM.ts +2 -2
- package/src/primitives/BigNumber.ts +122 -113
- package/src/primitives/Curve.ts +16 -15
- package/src/primitives/ECDSA.ts +10 -8
- package/src/primitives/Hash.ts +381 -146
- package/src/primitives/JacobianPoint.ts +13 -11
- package/src/primitives/K256.ts +3 -3
- package/src/primitives/Point.ts +35 -38
- package/src/primitives/PrivateKey.ts +3 -3
- package/src/primitives/PublicKey.ts +3 -3
- package/src/primitives/Random.ts +11 -14
- package/src/primitives/ReaderUint8Array.ts +7 -7
- package/src/primitives/Schnorr.ts +2 -1
- package/src/primitives/Secp256r1.ts +2 -1
- package/src/primitives/Signature.ts +8 -8
- package/src/primitives/SymmetricKey.ts +145 -1
- package/src/primitives/TransactionSignature.ts +16 -16
- package/src/primitives/__tests/Hash.additional.test.ts +65 -0
- package/src/primitives/__tests/Hash.test.ts +6 -1
- package/src/primitives/utils.ts +37 -47
- package/src/registry/RegistryClient.ts +25 -25
- package/src/remittance/RemittanceManager.ts +17 -18
- package/src/remittance/modules/BasicBRC29.ts +2 -5
- package/src/script/Script.ts +114 -170
- package/src/script/ScriptEvaluationError.ts +2 -2
- package/src/script/Spend.ts +14 -15
- package/src/script/templates/PushDrop.ts +5 -3
- package/src/script/templates/RPuzzle.ts +2 -4
- package/src/storage/StorageDownloader.ts +1 -1
- package/src/totp/totp.ts +1 -1
- package/src/transaction/Beef.ts +241 -203
- package/src/transaction/BeefConstants.ts +16 -0
- package/src/transaction/BeefTx.ts +3 -3
- package/src/transaction/MerklePath.ts +4 -4
- package/src/transaction/Transaction.ts +48 -51
- package/src/transaction/fee-models/SatoshisPerKilobyte.ts +1 -1
- package/src/transaction/http/BinaryFetchClient.ts +8 -8
- package/src/transaction/http/DefaultHttpClient.ts +8 -8
- package/src/wallet/CachedKeyDeriver.ts +8 -6
- package/src/wallet/KeyDeriver.ts +1 -1
- package/src/wallet/Wallet.interfaces.ts +18 -5
- package/src/wallet/WalletClient.ts +9 -9
- package/src/wallet/WalletError.ts +1 -1
- package/src/wallet/__tests/WalletClient.substrate.test.ts +10 -6
- package/src/wallet/substrates/HTTPWalletJSON.ts +22 -21
- package/src/wallet/substrates/ReactNativeWebView.ts +9 -9
- package/src/wallet/substrates/WalletWireProcessor.ts +83 -83
- package/src/wallet/substrates/WalletWireTransceiver.ts +528 -938
- package/src/wallet/substrates/XDM.ts +4 -4
- package/src/wallet/substrates/__tests/HTTPWalletJSON.test.ts +38 -25
- package/src/wallet/substrates/__tests/ReactNativeWebView.test.ts +174 -0
- package/src/wallet/substrates/__tests/window.CWI.test.ts +256 -0
- package/src/wallet/substrates/window.CWI.ts +11 -11
- package/src/wallet/validationHelpers.ts +9 -9
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContactsManager.d.ts","sourceRoot":"","sources":["../../../../src/identity/ContactsManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAgB,eAAe,EAAkB,MAAM,oBAAoB,CAAA;AAE7F,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAGtD,MAAM,MAAM,OAAO,GAAG,mBAAmB,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAAE,CAAA;AAyB9E,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAoB;IAC1C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAqB;IACxD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAQ;
|
|
1
|
+
{"version":3,"file":"ContactsManager.d.ts","sourceRoot":"","sources":["../../../../src/identity/ContactsManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAgB,eAAe,EAAkB,MAAM,oBAAoB,CAAA;AAE7F,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAGtD,MAAM,MAAM,OAAO,GAAG,mBAAmB,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAAE,CAAA;AAyB9E,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAoB;IAC1C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAqB;IACxD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAQ;IAMpC,OAAO,CAAC,YAAY,CAAkC;IACtD,OAAO,CAAC,UAAU,CAAQ;gBAEb,MAAM,CAAC,EAAE,eAAe,EAAE,UAAU,CAAC,EAAE,MAAM;IAK1D;;;;;;;;;;;OAWG;IACG,WAAW,CAAE,WAAW,CAAC,EAAE,SAAS,EAAE,YAAY,UAAQ,EAAE,KAAK,SAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAmBnG,6CAA6C;IAC7C,OAAO,CAAC,UAAU;IAMlB,qFAAqF;YACvE,sBAAsB;IAmBpC,yFAAyF;IACzF,OAAO,CAAC,kBAAkB;IAY1B,6FAA6F;YAC/E,oBAAoB;IAWlC,6FAA6F;YAC/E,qBAAqB;IAoCnC;;;;OAIG;IACG,WAAW,CAAE,OAAO,EAAE,mBAAmB,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IA2B/F,wEAAwE;YAC1D,eAAe;IAQ7B,sGAAsG;YACxF,kBAAkB;IAwBhC,mEAAmE;YACrD,cAAc;IAQ5B,qFAAqF;YACvE,mBAAmB;IAgCjC,6CAA6C;YAC/B,mBAAmB;IAkBjC;;;OAGG;IACG,aAAa,CAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BxD,iHAAiH;YACnG,qBAAqB;CAmCpC"}
|
|
@@ -2,6 +2,43 @@ import { DisplayableIdentity } from './types/index.js';
|
|
|
2
2
|
import { Base64String, CertificateFieldNameUnder50Bytes, DiscoverByAttributesArgs, DiscoverByIdentityKeyArgs, IdentityCertificate, OriginatorDomainNameStringUnder250Bytes, PubKeyHex, WalletCertificate, WalletInterface } from '../wallet/index.js';
|
|
3
3
|
import { BroadcastFailure, BroadcastResponse } from '../transaction/index.js';
|
|
4
4
|
import { Contact } from './ContactsManager.js';
|
|
5
|
+
/** Options for {@link IdentityClient.resolveByIdentityKey}. */
|
|
6
|
+
export interface ResolveByIdentityKeyOptions {
|
|
7
|
+
/**
|
|
8
|
+
* Opt-in to consulting personal contacts before/alongside the overlay. Default `false`.
|
|
9
|
+
*
|
|
10
|
+
* Most callers (including any client without a populated contacts basket) pay no benefit
|
|
11
|
+
* from the contacts path and incur its setup cost. Set `true` only in UI contexts where
|
|
12
|
+
* the user has likely saved contacts and a local cache hit is preferable to a fresh overlay
|
|
13
|
+
* answer.
|
|
14
|
+
*/
|
|
15
|
+
useContacts?: boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Legacy alias for {@link useContacts}. When provided, takes precedence over the new flag.
|
|
18
|
+
* Kept for binary compatibility — new code should use `useContacts`.
|
|
19
|
+
*/
|
|
20
|
+
overrideWithContacts?: boolean;
|
|
21
|
+
/**
|
|
22
|
+
* When `true` (and {@link useContacts} is also true), fire contacts and overlay in parallel
|
|
23
|
+
* rather than short-circuiting on a contacts hit. Use only when callers specifically need a
|
|
24
|
+
* fresh overlay answer alongside any cached contact record.
|
|
25
|
+
*/
|
|
26
|
+
parallel?: boolean;
|
|
27
|
+
}
|
|
28
|
+
/** Options for {@link IdentityClient.resolveByAttributes}. */
|
|
29
|
+
export interface ResolveByAttributesOptions {
|
|
30
|
+
/**
|
|
31
|
+
* Opt-in to consulting personal contacts before/alongside the overlay. Default `false`.
|
|
32
|
+
* See {@link ResolveByIdentityKeyOptions.useContacts}.
|
|
33
|
+
*/
|
|
34
|
+
useContacts?: boolean;
|
|
35
|
+
/** Legacy alias for {@link useContacts}. Takes precedence when provided. */
|
|
36
|
+
overrideWithContacts?: boolean;
|
|
37
|
+
/**
|
|
38
|
+
* When `true` (and {@link useContacts} is also true), fire contacts and overlay in parallel.
|
|
39
|
+
*/
|
|
40
|
+
parallel?: boolean;
|
|
41
|
+
}
|
|
5
42
|
/**
|
|
6
43
|
* IdentityClient lets you discover who others are, and let the world know who you are.
|
|
7
44
|
*/
|
|
@@ -23,21 +60,38 @@ export declare class IdentityClient {
|
|
|
23
60
|
*/
|
|
24
61
|
publiclyRevealAttributes(certificate: WalletCertificate, fieldsToReveal: CertificateFieldNameUnder50Bytes[]): Promise<BroadcastResponse | BroadcastFailure>;
|
|
25
62
|
/**
|
|
26
|
-
* Resolves displayable identity certificates
|
|
63
|
+
* Resolves displayable identity certificates issued to a given identity key.
|
|
64
|
+
*
|
|
65
|
+
* **Default behavior (changed): contacts are NOT consulted.** Most clients have no
|
|
66
|
+
* contacts saved locally, so the previous "contacts-first" default paid setup cost for no
|
|
67
|
+
* gain. Pass `{ useContacts: true }` to opt in — appropriate when you know the user has
|
|
68
|
+
* saved contacts and prefers a local hit over a fresh overlay answer.
|
|
27
69
|
*
|
|
28
|
-
*
|
|
29
|
-
*
|
|
30
|
-
*
|
|
70
|
+
* When `useContacts: true`:
|
|
71
|
+
* - Default short-circuits: if a contact matches, the overlay is skipped entirely.
|
|
72
|
+
* - `{ parallel: true }` fires contacts and overlay in parallel; contact wins on hit.
|
|
73
|
+
*
|
|
74
|
+
* @param args - Arguments for requesting the discovery based on the identity key.
|
|
75
|
+
* @param opts - Boolean (legacy) or options object. Boolean `true` ≡ `{ useContacts: true }`.
|
|
31
76
|
*/
|
|
32
|
-
resolveByIdentityKey(args: DiscoverByIdentityKeyArgs,
|
|
77
|
+
resolveByIdentityKey(args: DiscoverByIdentityKeyArgs, opts?: boolean | ResolveByIdentityKeyOptions): Promise<DisplayableIdentity[]>;
|
|
33
78
|
/**
|
|
34
|
-
* Resolves displayable identity certificates by specific identity attributes
|
|
79
|
+
* Resolves displayable identity certificates by specific identity attributes.
|
|
80
|
+
*
|
|
81
|
+
* **Default behavior (changed): contacts are NOT consulted.** See
|
|
82
|
+
* {@link resolveByIdentityKey} for the reasoning. Pass `{ useContacts: true }` to opt in.
|
|
35
83
|
*
|
|
36
|
-
* @param
|
|
37
|
-
* @param
|
|
38
|
-
* @returns {Promise<DisplayableIdentity[]>} The promise resolves to displayable identities.
|
|
84
|
+
* @param args - Attributes and optional parameters used to discover certificates.
|
|
85
|
+
* @param opts - Boolean (legacy) or options object. Boolean `true` ≡ `{ useContacts: true }`.
|
|
39
86
|
*/
|
|
40
|
-
resolveByAttributes(args: DiscoverByAttributesArgs,
|
|
87
|
+
resolveByAttributes(args: DiscoverByAttributesArgs, opts?: boolean | ResolveByAttributesOptions): Promise<DisplayableIdentity[]>;
|
|
88
|
+
/**
|
|
89
|
+
* Best-effort match of contacts against a `DiscoverByAttributesArgs.attributes` shape.
|
|
90
|
+
* Used by the contacts-first path of {@link resolveByAttributes} to decide whether the overlay
|
|
91
|
+
* can be skipped. Compares string-valued attributes against same-named fields on the contact's
|
|
92
|
+
* decrypted record. Returns the subset of contacts that match every supplied attribute.
|
|
93
|
+
*/
|
|
94
|
+
private matchContactsByAttributes;
|
|
41
95
|
/**
|
|
42
96
|
* Remove public certificate revelation from overlay services by spending the identity token
|
|
43
97
|
* @param serialNumber - Unique serial number of the certificate to revoke revelation
|
|
@@ -62,6 +116,17 @@ export declare class IdentityClient {
|
|
|
62
116
|
* @param identityKey The identity key of the contact to remove
|
|
63
117
|
*/
|
|
64
118
|
removeContact(identityKey: PubKeyHex): Promise<void>;
|
|
119
|
+
/**
|
|
120
|
+
* Parse an array of certificates into DisplayableIdentity records, yielding to the
|
|
121
|
+
* event loop every {@link PARSE_BATCH_SIZE} entries so large result sets don't hog
|
|
122
|
+
* the main thread. Equivalent to `certs.map(parseIdentity)` for small inputs.
|
|
123
|
+
*/
|
|
124
|
+
static parseIdentities(certs: IdentityCertificate[]): Promise<DisplayableIdentity[]>;
|
|
125
|
+
/**
|
|
126
|
+
* Same as {@link parseIdentities} but consults a contact override map keyed by subject
|
|
127
|
+
* identity key. Used by `resolveByAttributes` when contacts are loaded.
|
|
128
|
+
*/
|
|
129
|
+
static parseIdentitiesWithOverrides(certs: IdentityCertificate[], contactByKey: Map<PubKeyHex, Contact>): Promise<DisplayableIdentity[]>;
|
|
65
130
|
/**
|
|
66
131
|
* Parse out identity and certifier attributes to display from an IdentityCertificate
|
|
67
132
|
* @param identityToParse - The Identity Certificate to parse
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IdentityClient.d.ts","sourceRoot":"","sources":["../../../../src/identity/IdentityClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoD,mBAAmB,EAAwB,MAAM,kBAAkB,CAAA;AAC9H,OAAO,EACL,YAAY,EACZ,gCAAgC,EAChC,wBAAwB,EACxB,yBAAyB,EACzB,mBAAmB,EACnB,uCAAuC,EACvC,SAAS,EACT,iBAAiB,EAEjB,eAAe,EAChB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAe,MAAM,yBAAyB,CAAA;AAK1F,OAAO,EAAmB,OAAO,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"IdentityClient.d.ts","sourceRoot":"","sources":["../../../../src/identity/IdentityClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoD,mBAAmB,EAAwB,MAAM,kBAAkB,CAAA;AAC9H,OAAO,EACL,YAAY,EACZ,gCAAgC,EAChC,wBAAwB,EACxB,yBAAyB,EACzB,mBAAmB,EACnB,uCAAuC,EACvC,SAAS,EACT,iBAAiB,EAEjB,eAAe,EAChB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAe,MAAM,yBAAyB,CAAA;AAK1F,OAAO,EAAmB,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAqB/D,+DAA+D;AAC/D,MAAM,WAAW,2BAA2B;IAC1C;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,8DAA8D;AAC9D,MAAM,WAAW,0BAA0B;IACzC;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,4EAA4E;IAC5E,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAYD;;GAEG;AACH,qBAAa,cAAc;IAKvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;IAL9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAiB;gBAE/C,MAAM,CAAC,EAAE,eAAe,EACP,OAAO,mDAAkC,EACzC,UAAU,CAAC,EAAE,uCAAuC;IAOvE;;;;;;;;;OASG;IACG,wBAAwB,CAC5B,WAAW,EAAE,iBAAiB,EAC9B,cAAc,EAAE,gCAAgC,EAAE,GACjD,OAAO,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;IAiFhD;;;;;;;;;;;;;;OAcG;IACG,oBAAoB,CACxB,IAAI,EAAE,yBAAyB,EAC/B,IAAI,GAAE,OAAO,GAAG,2BAAmC,GAClD,OAAO,CAAC,mBAAmB,EAAE,CAAC;IA8BjC;;;;;;;;OAQG;IACG,mBAAmB,CACvB,IAAI,EAAE,wBAAwB,EAC9B,IAAI,GAAE,OAAO,GAAG,0BAAkC,GACjD,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAqCjC;;;;;OAKG;IACH,OAAO,CAAC,yBAAyB;IAmBjC;;;OAGG;IACG,2BAA2B,CAC/B,YAAY,EAAE,YAAY,GACzB,OAAO,CAAC,IAAI,CAAC;IA4FhB;;;;;;OAMG;IACU,WAAW,CACtB,WAAW,CAAC,EAAE,SAAS,EACvB,YAAY,UAAQ,EACpB,KAAK,SAAO,GACX,OAAO,CAAC,OAAO,EAAE,CAAC;IAQrB;;;;OAIG;IACU,WAAW,CACtB,OAAO,EAAE,mBAAmB,EAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC7B,OAAO,CAAC,IAAI,CAAC;IAIhB;;;OAGG;IACU,aAAa,CAAE,WAAW,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlE;;;;OAIG;WACU,eAAe,CAAE,KAAK,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAa3F;;;OAGG;WACU,4BAA4B,CACvC,KAAK,EAAE,mBAAmB,EAAE,EAC5B,YAAY,EAAE,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,GACpC,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAcjC;;;;OAIG;IACH,MAAM,CAAC,aAAa,CAClB,eAAe,EAAE,mBAAmB,GACnC,mBAAmB;IA+FtB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ;IAIvB;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,yBAAyB;CA8DzC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GlobalKVStore.d.ts","sourceRoot":"","sources":["../../../../src/kvstore/GlobalKVStore.ts"],"names":[],"mappings":"AAIA,OAAO,EAAsD,cAAc,EAAa,kBAAkB,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAA;AAO7J,OAAO,EAAc,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAmB9I;;;;GAIG;AACH,qBAAa,aAAa;IACxB;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IAExC;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IAEtC;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA8B;IAExD;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgB;IAE/C;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkB;IAEnD;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2E;IAEpG;;;OAGG;IACH,OAAO,CAAC,iBAAiB,CAAyB;IAElD;;;;;;OAMG;gBACU,MAAM,GAAE,aAAkB;IAavC;;;;;;;OAOG;IACG,GAAG,CAAE,KAAK,EAAE,YAAY,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,YAAY,GAAG,YAAY,EAAE,GAAG,SAAS,CAAC;IAUpH;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IAY9B;;;;;;;OAOG;IACG,GAAG,CAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,cAAc,CAAC;IAoIhG;;;;;;;;;;;OAWG;IACG,MAAM,CAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB,EAAE,EAAE,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,SAAS,CAAC;IAgFlH;;;;;;;OAOG;YACW,mBAAmB;IAuBjC;;;;;;OAMG;IACH,OAAO,CAAC,oBAAoB;IAW5B;;;;;OAKG;YACW,cAAc;
|
|
1
|
+
{"version":3,"file":"GlobalKVStore.d.ts","sourceRoot":"","sources":["../../../../src/kvstore/GlobalKVStore.ts"],"names":[],"mappings":"AAIA,OAAO,EAAsD,cAAc,EAAa,kBAAkB,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAA;AAO7J,OAAO,EAAc,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAmB9I;;;;GAIG;AACH,qBAAa,aAAa;IACxB;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IAExC;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IAEtC;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA8B;IAExD;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgB;IAE/C;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkB;IAEnD;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2E;IAEpG;;;OAGG;IACH,OAAO,CAAC,iBAAiB,CAAyB;IAElD;;;;;;OAMG;gBACU,MAAM,GAAE,aAAkB;IAavC;;;;;;;OAOG;IACG,GAAG,CAAE,KAAK,EAAE,YAAY,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,YAAY,GAAG,YAAY,EAAE,GAAG,SAAS,CAAC;IAUpH;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IAY9B;;;;;;;OAOG;IACG,GAAG,CAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,cAAc,CAAC;IAoIhG;;;;;;;;;;;OAWG;IACG,MAAM,CAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB,EAAE,EAAE,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,SAAS,CAAC;IAgFlH;;;;;;;OAOG;YACW,mBAAmB;IAuBjC;;;;;;OAMG;IACH,OAAO,CAAC,oBAAoB;IAW5B;;;;;OAKG;YACW,cAAc;IAK5B;;;;;;;OAOG;YACW,YAAY;IAwF1B;;;;;;;;OAQG;YACW,eAAe;CAG9B;AAED,eAAe,aAAa,CAAA"}
|
|
@@ -22,8 +22,51 @@ export type LookupAnswer = {
|
|
|
22
22
|
beef: number[];
|
|
23
23
|
outputIndex: number;
|
|
24
24
|
context?: number[];
|
|
25
|
+
/** Optional txid hint. When present, consumers can skip re-parsing beef to derive the txid. */
|
|
26
|
+
txid?: string;
|
|
25
27
|
}>;
|
|
26
28
|
};
|
|
29
|
+
/**
|
|
30
|
+
* Per-call options for {@link LookupResolver.query} and {@link LookupResolver.query$}.
|
|
31
|
+
* All optional; defaults preserve prior behavior.
|
|
32
|
+
*/
|
|
33
|
+
export interface LookupQueryOptions {
|
|
34
|
+
/**
|
|
35
|
+
* Override the grace window (ms) between the first valid response and the resolution of the query.
|
|
36
|
+
* Late responders arriving within this window are merged into the result. Default 80 ms.
|
|
37
|
+
* Raise for identity-style paths (e.g. ~300 ms) where divergence between hosts matters.
|
|
38
|
+
*/
|
|
39
|
+
graceMs?: number;
|
|
40
|
+
/**
|
|
41
|
+
* Soft timeout (ms). When set:
|
|
42
|
+
* - `query()` resolves with whatever has arrived as soon as any host answers, or after this timeout.
|
|
43
|
+
* - `query$()` emits a (possibly empty) snapshot after this timeout if no host has answered yet,
|
|
44
|
+
* then continues yielding late-host enrichments until the iterator is broken or final emission.
|
|
45
|
+
*/
|
|
46
|
+
softTimeoutMs?: number;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* One emission from {@link LookupResolver.query$}. Carries the cumulative output set discovered so far
|
|
50
|
+
* plus a small envelope describing progress across hosts. Callers can render fast on the first emission
|
|
51
|
+
* and refine in place as more hosts answer.
|
|
52
|
+
*/
|
|
53
|
+
export interface LookupAnswerProgress {
|
|
54
|
+
type: 'output-list';
|
|
55
|
+
outputs: Array<{
|
|
56
|
+
beef: number[];
|
|
57
|
+
outputIndex: number;
|
|
58
|
+
context?: number[];
|
|
59
|
+
txid?: string;
|
|
60
|
+
}>;
|
|
61
|
+
/** Parallel array of resolved tx ids for each output (same index as `outputs`). */
|
|
62
|
+
txIds: string[];
|
|
63
|
+
/** True only for the final emission, after every in-flight host has settled. */
|
|
64
|
+
isFinal: boolean;
|
|
65
|
+
/** Number of ranked hosts that were queried. */
|
|
66
|
+
hostCount: number;
|
|
67
|
+
/** Number of hosts that have settled (success / fail / timeout). */
|
|
68
|
+
completedHosts: number;
|
|
69
|
+
}
|
|
27
70
|
/** Default SLAP trackers */
|
|
28
71
|
export declare const DEFAULT_SLAP_TRACKERS: string[];
|
|
29
72
|
/** Default testnet SLAP trackers */
|
|
@@ -78,6 +121,10 @@ export declare class HTTPSOverlayLookupFacilitator implements OverlayLookupFacil
|
|
|
78
121
|
allowHTTP: boolean;
|
|
79
122
|
constructor(httpClient?: typeof fetch, allowHTTP?: boolean);
|
|
80
123
|
lookup(url: string, question: LookupQuestion, timeout?: number): Promise<LookupAnswer>;
|
|
124
|
+
/** Parse the aggregated octet-stream lookup response into an output-list LookupAnswer. */
|
|
125
|
+
private parseOctetStreamLookup;
|
|
126
|
+
/** Memoize per-txid atomic BEEF extraction, yielding to the event loop between outputs. */
|
|
127
|
+
private extractAtomicOutputs;
|
|
81
128
|
}
|
|
82
129
|
/**
|
|
83
130
|
* Represents a Lookup Resolver.
|
|
@@ -98,8 +145,26 @@ export default class LookupResolver {
|
|
|
98
145
|
constructor(config?: LookupResolverConfig);
|
|
99
146
|
/**
|
|
100
147
|
* Given a LookupQuestion, returns a LookupAnswer. Aggregates across multiple services and supports resiliency.
|
|
148
|
+
*
|
|
149
|
+
* Optional `options.graceMs` overrides the per-call grace window (default 80 ms).
|
|
150
|
+
* Optional `options.softTimeoutMs` resolves the query early with whatever has arrived once any host has
|
|
151
|
+
* answered (or with an empty result if no host has answered by `softTimeoutMs`).
|
|
152
|
+
*/
|
|
153
|
+
query(question: LookupQuestion, timeout?: number, options?: LookupQueryOptions): Promise<LookupAnswer>;
|
|
154
|
+
/**
|
|
155
|
+
* Iterable form of {@link query}. Emits partial results as hosts answer.
|
|
156
|
+
*
|
|
157
|
+
* Emission order:
|
|
158
|
+
* - First emission: after the grace window expires (or as soon as the soft timeout elapses), containing
|
|
159
|
+
* every output gathered from hosts that answered by then.
|
|
160
|
+
* - Subsequent emissions: re-emitted whenever a late host returns extra outputs that weren't in earlier
|
|
161
|
+
* emissions. Each emission contains the cumulative `outputs` set.
|
|
162
|
+
* - Final emission: `isFinal: true` once all in-flight hosts have settled (success / fail / timeout). The
|
|
163
|
+
* caller can `break` early; outstanding work is bounded by the per-host timeout.
|
|
164
|
+
*
|
|
165
|
+
* No host work runs past its per-host `timeout` — there is no leak risk on early break.
|
|
101
166
|
*/
|
|
102
|
-
query(question: LookupQuestion, timeout?: number):
|
|
167
|
+
query$(question: LookupQuestion, timeout?: number, options?: LookupQueryOptions): AsyncIterable<LookupAnswerProgress>;
|
|
103
168
|
/**
|
|
104
169
|
* Cached wrapper for competent host discovery with stale-while-revalidate.
|
|
105
170
|
*/
|
|
@@ -120,7 +185,13 @@ export default class LookupResolver {
|
|
|
120
185
|
* @returns Array of hosts competent for resolving queries
|
|
121
186
|
*/
|
|
122
187
|
private findCompetentHosts;
|
|
123
|
-
/**
|
|
188
|
+
/**
|
|
189
|
+
* Resolve a txid for an aggregated lookup output. Uses the threaded-through `output.txid`
|
|
190
|
+
* fast path when present; otherwise memoizes Transaction.fromBEEF(beef).id('hex') keyed by
|
|
191
|
+
* the BEEF byte sequence. Returns null when the BEEF is unparseable.
|
|
192
|
+
*/
|
|
193
|
+
private resolveTxIdForOutput;
|
|
194
|
+
/** Evict an arbitrary "oldest" entry from a Map (iteration order). */
|
|
124
195
|
private evictOldest;
|
|
125
196
|
private assertValidOverrideServices;
|
|
126
197
|
private prepareHostsForQuery;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LookupResolver.d.ts","sourceRoot":"","sources":["../../../../src/overlay-tools/LookupResolver.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"LookupResolver.d.ts","sourceRoot":"","sources":["../../../../src/overlay-tools/LookupResolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,6 +37,10 @@ export interface AdmittanceInstructions {
|
|
|
37
37
|
* An object whose keys are topic names and whose values are topical admittance instructions denoting the state of the submitted transaction with respect to the associated topic.
|
|
38
38
|
*/
|
|
39
39
|
export type STEAK = Record<string, AdmittanceInstructions>;
|
|
40
|
+
/** The require mode for topic acknowledgment: all topics must be present, or any one suffices. */
|
|
41
|
+
export type RequireMode = 'all' | 'any';
|
|
42
|
+
/** Specifies which topics must be acknowledged: all, any, or a specific list. */
|
|
43
|
+
export type TopicAcknowledgmentRequirement = RequireMode | string[];
|
|
40
44
|
/** Configuration options for the SHIP broadcaster. */
|
|
41
45
|
export interface SHIPBroadcasterConfig {
|
|
42
46
|
/**
|
|
@@ -51,11 +55,11 @@ export interface SHIPBroadcasterConfig {
|
|
|
51
55
|
/** The resolver used to locate suitable hosts with SHIP */
|
|
52
56
|
resolver?: LookupResolver;
|
|
53
57
|
/** Determines which topics (all, any, or a specific list) must be present within all STEAKs received from every host for the broadcast to be considered a success. By default, all hosts must acknowledge all topics. */
|
|
54
|
-
requireAcknowledgmentFromAllHostsForTopics?:
|
|
58
|
+
requireAcknowledgmentFromAllHostsForTopics?: TopicAcknowledgmentRequirement;
|
|
55
59
|
/** Determines which topics (all, any, or a specific list) must be present within STEAK received from at least one host for the broadcast to be considered a success. */
|
|
56
|
-
requireAcknowledgmentFromAnyHostForTopics?:
|
|
60
|
+
requireAcknowledgmentFromAnyHostForTopics?: TopicAcknowledgmentRequirement;
|
|
57
61
|
/** Determines a mapping whose keys are specific hosts and whose values are the topics (all, any, or a specific list) that must be present within the STEAK received by the given hosts, in order for the broadcast to be considered a success. */
|
|
58
|
-
requireAcknowledgmentFromSpecificHostsForTopics?: Record<string,
|
|
62
|
+
requireAcknowledgmentFromSpecificHostsForTopics?: Record<string, TopicAcknowledgmentRequirement>;
|
|
59
63
|
}
|
|
60
64
|
/** Facilitates transaction broadcasts that return STEAK. */
|
|
61
65
|
export interface OverlayBroadcastFacilitator {
|
|
@@ -95,6 +99,17 @@ export default class TopicBroadcaster implements Broadcaster {
|
|
|
95
99
|
* @returns {Promise<BroadcastResponse | BroadcastFailure>} A promise that resolves to either a success or failure response.
|
|
96
100
|
*/
|
|
97
101
|
broadcast(tx: Transaction): Promise<BroadcastResponse | BroadcastFailure>;
|
|
102
|
+
/** Resolves the (requiredTopics, require) pair for requireAcknowledgmentFromAllHostsForTopics. */
|
|
103
|
+
private resolveAllHostsRequirement;
|
|
104
|
+
private checkAllHostsRequirement;
|
|
105
|
+
/** Resolves the (requiredTopics, require) pair for requireAcknowledgmentFromAnyHostForTopics. */
|
|
106
|
+
private resolveAnyHostRequirement;
|
|
107
|
+
private checkAnyHostRequirement;
|
|
108
|
+
private checkSpecificHostsRequirement;
|
|
109
|
+
/**
|
|
110
|
+
* Returns true if `acknowledgedTopics` satisfies the given requirement against `requiredTopics`.
|
|
111
|
+
*/
|
|
112
|
+
private topicsMatchRequirement;
|
|
98
113
|
private checkAcknowledgmentFromAllHosts;
|
|
99
114
|
private checkAcknowledgmentFromAnyHost;
|
|
100
115
|
private checkAcknowledgmentFromSpecificHosts;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SHIPBroadcaster.d.ts","sourceRoot":"","sources":["../../../../src/overlay-tools/SHIPBroadcaster.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACZ,MAAM,yBAAyB,CAAA;AAEhC,OAAO,cAAc,MAAM,qBAAqB,CAAA;AAGhD;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,cAAc,EAAE,MAAM,EAAE,CAAA;IAExB;;OAEG;IACH,aAAa,EAAE,MAAM,EAAE,CAAA;IAEvB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;CACxB;AAED;;;;;;GAMG;AACH,MAAM,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAA;AAE1D,sDAAsD;AACtD,MAAM,WAAW,qBAAqB;IACpC;;;;;OAKG;IACH,aAAa,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,CAAA;IAC/C,uEAAuE;IACvE,WAAW,CAAC,EAAE,2BAA2B,CAAA;IACzC,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,cAAc,CAAA;IACzB,yNAAyN;IACzN,0CAA0C,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"SHIPBroadcaster.d.ts","sourceRoot":"","sources":["../../../../src/overlay-tools/SHIPBroadcaster.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import ReductionContext from './ReductionContext.js';
|
|
2
|
+
/** Comparison result: -1 (less than), 0 (equal), or 1 (greater than). */
|
|
3
|
+
type CompareResult = 1 | 0 | -1;
|
|
2
4
|
/**
|
|
3
5
|
* JavaScript numbers are only precise up to 53 bits. Since Bitcoin relies on
|
|
4
6
|
* 256-bit cryptography, this BigNumber class enables operations on larger
|
|
@@ -106,6 +108,9 @@ export default class BigNumber {
|
|
|
106
108
|
* @param endian - The endianness provided. By default is 'big endian'.
|
|
107
109
|
*/
|
|
108
110
|
constructor(number?: number | string | number[] | bigint | undefined, base?: number | 'be' | 'le' | 'hex', endian?: 'be' | 'le');
|
|
111
|
+
private _initFromString;
|
|
112
|
+
private _initFromHexString;
|
|
113
|
+
private _initFromNonHexString;
|
|
109
114
|
private _bigIntToStringInBase;
|
|
110
115
|
private _parseBaseString;
|
|
111
116
|
private _parseBaseWord;
|
|
@@ -132,6 +137,8 @@ export default class BigNumber {
|
|
|
132
137
|
*/
|
|
133
138
|
toString(base?: number | 'hex', padding?: number): string;
|
|
134
139
|
private toBaseString;
|
|
140
|
+
/** Returns a chunk string zero-padded to groupSize (used by toBaseString for interior chunks). */
|
|
141
|
+
private _zeroPaddedChunk;
|
|
135
142
|
/**
|
|
136
143
|
* Converts the BigNumber instance to a JavaScript number.
|
|
137
144
|
* Please note that JavaScript numbers are only precise up to 53 bits.
|
|
@@ -259,6 +266,8 @@ export default class BigNumber {
|
|
|
259
266
|
iabs(): this;
|
|
260
267
|
abs(): BigNumber;
|
|
261
268
|
divmod(num: BigNumber, mode?: 'div' | 'mod', positive?: boolean): any;
|
|
269
|
+
private _computeMod;
|
|
270
|
+
private _bigNumberFromSigned;
|
|
262
271
|
div(num: BigNumber): BigNumber;
|
|
263
272
|
mod(num: BigNumber): BigNumber;
|
|
264
273
|
umod(num: BigNumber): BigNumber;
|
|
@@ -278,9 +287,9 @@ export default class BigNumber {
|
|
|
278
287
|
andln(num: number): number;
|
|
279
288
|
bincn(bit: number): this;
|
|
280
289
|
isZero(): boolean;
|
|
281
|
-
cmpn(num: number):
|
|
282
|
-
cmp(num: BigNumber):
|
|
283
|
-
ucmp(num: BigNumber):
|
|
290
|
+
cmpn(num: number): CompareResult;
|
|
291
|
+
cmp(num: BigNumber): CompareResult;
|
|
292
|
+
ucmp(num: BigNumber): CompareResult;
|
|
284
293
|
gtn(num: number): boolean;
|
|
285
294
|
gt(num: BigNumber): boolean;
|
|
286
295
|
gten(num: number): boolean;
|
|
@@ -443,4 +452,5 @@ export default class BigNumber {
|
|
|
443
452
|
*/
|
|
444
453
|
mulTo(num: BigNumber, out: BigNumber): BigNumber;
|
|
445
454
|
}
|
|
455
|
+
export {};
|
|
446
456
|
//# sourceMappingURL=BigNumber.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BigNumber.d.ts","sourceRoot":"","sources":["../../../../src/primitives/BigNumber.ts"],"names":[],"mappings":"AACA,OAAO,gBAAgB,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"BigNumber.d.ts","sourceRoot":"","sources":["../../../../src/primitives/BigNumber.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Curve.d.ts","sourceRoot":"","sources":["../../../../src/primitives/Curve.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,gBAAgB,CAAA;AACtC,OAAO,gBAAgB,MAAM,uBAAuB,CAAA;AAEpD,OAAO,KAAK,MAAM,YAAY,CAAA;AAQ9B,MAAM,CAAC,OAAO,OAAO,KAAK;IACxB,CAAC,EAAE,SAAS,CAAA;IACZ,GAAG,EAAE,gBAAgB,CAAA;IACrB,IAAI,EAAE,SAAS,GAAG,IAAI,CAAA;IACtB,IAAI,EAAE,SAAS,CAAA;IACf,GAAG,EAAE,SAAS,CAAA;IACd,GAAG,EAAE,SAAS,CAAA;IACd,CAAC,EAAE,KAAK,CAAA;IACR,CAAC,EAAE,SAAS,CAAA;IACZ,CAAC,EAAE,SAAS,CAAA;IACZ,CAAC,EAAE,SAAS,CAAA;IACZ,IAAI,EAAE,SAAS,CAAA;IACf,KAAK,EAAE,OAAO,CAAA;IACd,MAAM,EAAE,OAAO,CAAA;IACf,IAAI,EAAE;QAAE,IAAI,EAAE,SAAS,CAAC;QAAC,MAAM,EAAE,SAAS,CAAC;QAAC,KAAK,EAAE,KAAK,CAAC;YAAE,CAAC,EAAE,SAAS,CAAC;YAAC,CAAC,EAAE,SAAS,CAAA;SAAE,CAAC,CAAA;KAAE,GAAG,SAAS,CAAA;IACtG,WAAW,EAAE,SAAS,EAAE,CAAA;IACxB,WAAW,EAAE,SAAS,EAAE,CAAA;IACxB,OAAO,EAAE,SAAS,EAAE,CAAA;IACpB,OAAO,EAAE,SAAS,EAAE,CAAA;IACpB,OAAO,EAAE,SAAS,EAAE,CAAA;IACpB,OAAO,EAAE,SAAS,EAAE,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;IAGlB,MAAM,CAAC,MAAM,CACX,UAAU,EAAE,OAAO,EACnB,OAAO,GAAE,MAA0C,GAClD,IAAI;IAMP,MAAM,CAAE,GAAG,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE;IA6B1D,MAAM,CAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,GAAG,MAAM,EAAE,EAAE;IAyDjD,MAAM,CAAC,cAAc,CAAE,GAAG,KAAA,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,KAAA,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"Curve.d.ts","sourceRoot":"","sources":["../../../../src/primitives/Curve.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,gBAAgB,CAAA;AACtC,OAAO,gBAAgB,MAAM,uBAAuB,CAAA;AAEpD,OAAO,KAAK,MAAM,YAAY,CAAA;AAQ9B,MAAM,CAAC,OAAO,OAAO,KAAK;IACxB,CAAC,EAAE,SAAS,CAAA;IACZ,GAAG,EAAE,gBAAgB,CAAA;IACrB,IAAI,EAAE,SAAS,GAAG,IAAI,CAAA;IACtB,IAAI,EAAE,SAAS,CAAA;IACf,GAAG,EAAE,SAAS,CAAA;IACd,GAAG,EAAE,SAAS,CAAA;IACd,CAAC,EAAE,KAAK,CAAA;IACR,CAAC,EAAE,SAAS,CAAA;IACZ,CAAC,EAAE,SAAS,CAAA;IACZ,CAAC,EAAE,SAAS,CAAA;IACZ,IAAI,EAAE,SAAS,CAAA;IACf,KAAK,EAAE,OAAO,CAAA;IACd,MAAM,EAAE,OAAO,CAAA;IACf,IAAI,EAAE;QAAE,IAAI,EAAE,SAAS,CAAC;QAAC,MAAM,EAAE,SAAS,CAAC;QAAC,KAAK,EAAE,KAAK,CAAC;YAAE,CAAC,EAAE,SAAS,CAAC;YAAC,CAAC,EAAE,SAAS,CAAA;SAAE,CAAC,CAAA;KAAE,GAAG,SAAS,CAAA;IACtG,WAAW,EAAE,SAAS,EAAE,CAAA;IACxB,WAAW,EAAE,SAAS,EAAE,CAAA;IACxB,OAAO,EAAE,SAAS,EAAE,CAAA;IACpB,OAAO,EAAE,SAAS,EAAE,CAAA;IACpB,OAAO,EAAE,SAAS,EAAE,CAAA;IACpB,OAAO,EAAE,SAAS,EAAE,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;IAGlB,MAAM,CAAC,MAAM,CACX,UAAU,EAAE,OAAO,EACnB,OAAO,GAAE,MAA0C,GAClD,IAAI;IAMP,MAAM,CAAE,GAAG,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE;IA6B1D,MAAM,CAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,GAAG,MAAM,EAAE,EAAE;IAyDjD,MAAM,CAAC,cAAc,CAAE,GAAG,KAAA,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,KAAA,GAAG,IAAI;IAUzD,MAAM,CAAC,UAAU,CAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE;IAItD,MAAM,CAAC,SAAS,CAAE,KAAK,EAAE,MAAM,EAAE,GAAG,SAAS;;IA01B7C,gBAAgB,CAAE,IAAI,KAAA,GACpB;QACA,IAAI,EAAE,SAAS,CAAA;QACf,MAAM,EAAE,SAAS,CAAA;QACjB,KAAK,EAAE,KAAK,CAAC;YAAE,CAAC,EAAE,SAAS,CAAC;YAAC,CAAC,EAAE,SAAS,CAAA;SAAE,CAAC,CAAA;KAC7C,GACC,SAAS;IAiFX,aAAa,CAAE,GAAG,EAAE,SAAS,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC;IAetD,aAAa,CACX,MAAM,EAAE,SAAS,GAChB,CAAC;QAAE,CAAC,EAAE,SAAS,CAAC;QAAC,CAAC,EAAE,SAAS,CAAA;KAAE,EAAE;QAAE,CAAC,EAAE,SAAS,CAAC;QAAC,CAAC,EAAE,SAAS,CAAA;KAAE,CAAC;IAyFnE,UAAU,CAAE,CAAC,EAAE,SAAS,GAAG;QAAE,EAAE,EAAE,SAAS,CAAC;QAAC,EAAE,EAAE,SAAS,CAAA;KAAE;IAsB3D,QAAQ,CAAE,KAAK,EAAE,KAAK,GAAG,OAAO;CAiBjC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ECDSA.d.ts","sourceRoot":"","sources":["../../../../src/primitives/ECDSA.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,gBAAgB,CAAA;AACtC,OAAO,SAAS,MAAM,gBAAgB,CAAA;AAEtC,OAAO,KAAyH,MAAM,YAAY,CAAA;AAsDlJ;;;;;;;;;;;;;;GAcG;AACH;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,IAAI,GACf,KAAK,SAAS,EACd,KAAK,SAAS,EACd,YAAW,OAAe,EAC1B,UAAU,SAAS,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,SAAS,CAAC,KAClD,
|
|
1
|
+
{"version":3,"file":"ECDSA.d.ts","sourceRoot":"","sources":["../../../../src/primitives/ECDSA.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,gBAAgB,CAAA;AACtC,OAAO,SAAS,MAAM,gBAAgB,CAAA;AAEtC,OAAO,KAAyH,MAAM,YAAY,CAAA;AAsDlJ;;;;;;;;;;;;;;GAcG;AACH;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,IAAI,GACf,KAAK,SAAS,EACd,KAAK,SAAS,EACd,YAAW,OAAe,EAC1B,UAAU,SAAS,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,SAAS,CAAC,KAClD,SA+EF,CAAA;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH;;;;;;;;GAQG;AACH,eAAO,MAAM,MAAM,GAAI,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,KAAK,KAAK,KAAG,OAkDnE,CAAA"}
|
|
@@ -104,6 +104,7 @@ export declare function toArray(msg: number[] | string, enc?: 'hex' | 'utf8'): n
|
|
|
104
104
|
* standards-compliant host-to-network conversion.
|
|
105
105
|
*/
|
|
106
106
|
export declare function htonl(w: number): number;
|
|
107
|
+
type HashInput = Uint8Array | number[] | string;
|
|
107
108
|
/**
|
|
108
109
|
* An implementation of RIPEMD160 cryptographic hash function. Extends the BaseHash class.
|
|
109
110
|
* It provides a way to compute a 'digest' for any kind of input data; transforming the data
|
|
@@ -148,9 +149,10 @@ export declare class RIPEMD160 extends BaseHash {
|
|
|
148
149
|
* @property k - The round constants used for each round of SHA-256
|
|
149
150
|
*/
|
|
150
151
|
export declare class SHA256 {
|
|
151
|
-
private readonly h
|
|
152
|
+
private readonly h?;
|
|
153
|
+
private readonly native?;
|
|
152
154
|
constructor();
|
|
153
|
-
update(msg:
|
|
155
|
+
update(msg: HashInput, enc?: 'hex' | 'utf8'): this;
|
|
154
156
|
digest(): number[];
|
|
155
157
|
digestHex(): string;
|
|
156
158
|
}
|
|
@@ -202,9 +204,10 @@ export declare class SHA1 extends BaseHash {
|
|
|
202
204
|
* @property k - The round constants used for each round of SHA-512.
|
|
203
205
|
*/
|
|
204
206
|
export declare class SHA512 {
|
|
205
|
-
private readonly h
|
|
207
|
+
private readonly h?;
|
|
208
|
+
private readonly native?;
|
|
206
209
|
constructor();
|
|
207
|
-
update(msg:
|
|
210
|
+
update(msg: HashInput, enc?: 'hex' | 'utf8'): this;
|
|
208
211
|
digest(): number[];
|
|
209
212
|
digestHex(): string;
|
|
210
213
|
}
|
|
@@ -221,7 +224,8 @@ export declare class SHA512 {
|
|
|
221
224
|
* @property outSize - The output size of the SHA-256 hash function, in bytes. It's set to 32 bytes.
|
|
222
225
|
*/
|
|
223
226
|
export declare class SHA256HMAC {
|
|
224
|
-
private readonly h
|
|
227
|
+
private readonly h?;
|
|
228
|
+
private readonly native?;
|
|
225
229
|
blockSize: number;
|
|
226
230
|
outSize: number;
|
|
227
231
|
/**
|
|
@@ -237,7 +241,7 @@ export declare class SHA256HMAC {
|
|
|
237
241
|
* @example
|
|
238
242
|
* const myHMAC = new SHA256HMAC('deadbeef');
|
|
239
243
|
*/
|
|
240
|
-
constructor(key:
|
|
244
|
+
constructor(key: HashInput);
|
|
241
245
|
/**
|
|
242
246
|
* Updates the `SHA256HMAC` object with part of the message to be hashed.
|
|
243
247
|
*
|
|
@@ -249,7 +253,7 @@ export declare class SHA256HMAC {
|
|
|
249
253
|
* @example
|
|
250
254
|
* myHMAC.update('deadbeef', 'hex');
|
|
251
255
|
*/
|
|
252
|
-
update(msg:
|
|
256
|
+
update(msg: HashInput, enc?: 'hex'): this;
|
|
253
257
|
/**
|
|
254
258
|
* Finalizes the HMAC computation and returns the resultant hash.
|
|
255
259
|
*
|
|
@@ -276,7 +280,7 @@ export declare class SHA1HMAC {
|
|
|
276
280
|
outer: SHA1;
|
|
277
281
|
blockSize: number;
|
|
278
282
|
constructor(key: number[] | string);
|
|
279
|
-
update(msg: number[] | string, enc?: 'hex'):
|
|
283
|
+
update(msg: number[] | string, enc?: 'hex'): this;
|
|
280
284
|
digest(): number[];
|
|
281
285
|
digestHex(): string;
|
|
282
286
|
}
|
|
@@ -293,7 +297,8 @@ export declare class SHA1HMAC {
|
|
|
293
297
|
* @property outSize - The output size of the SHA-512 hash function, in bytes. It's set to 64 bytes.
|
|
294
298
|
*/
|
|
295
299
|
export declare class SHA512HMAC {
|
|
296
|
-
private readonly h
|
|
300
|
+
private readonly h?;
|
|
301
|
+
private readonly native?;
|
|
297
302
|
blockSize: number;
|
|
298
303
|
outSize: number;
|
|
299
304
|
/**
|
|
@@ -309,7 +314,7 @@ export declare class SHA512HMAC {
|
|
|
309
314
|
* @example
|
|
310
315
|
* const myHMAC = new SHA512HMAC('deadbeef');
|
|
311
316
|
*/
|
|
312
|
-
constructor(key:
|
|
317
|
+
constructor(key: HashInput);
|
|
313
318
|
/**
|
|
314
319
|
* Updates the `SHA512HMAC` object with part of the message to be hashed.
|
|
315
320
|
*
|
|
@@ -321,7 +326,7 @@ export declare class SHA512HMAC {
|
|
|
321
326
|
* @example
|
|
322
327
|
* myHMAC.update('deadbeef', 'hex');
|
|
323
328
|
*/
|
|
324
|
-
update(msg:
|
|
329
|
+
update(msg: HashInput, enc?: 'hex' | 'utf8'): this;
|
|
325
330
|
/**
|
|
326
331
|
* Finalizes the HMAC computation and returns the resultant hash.
|
|
327
332
|
*
|
|
@@ -378,7 +383,7 @@ export declare const sha1: (msg: number[] | string, enc?: "hex" | "utf8") => num
|
|
|
378
383
|
* @example
|
|
379
384
|
* const digest = sha256('Hello, world!');
|
|
380
385
|
*/
|
|
381
|
-
export declare const sha256: (msg:
|
|
386
|
+
export declare const sha256: (msg: HashInput, enc?: "hex" | "utf8") => number[];
|
|
382
387
|
/**
|
|
383
388
|
* Computes SHA512 hash of a given message.
|
|
384
389
|
* @function sha512
|
|
@@ -390,7 +395,7 @@ export declare const sha256: (msg: Uint8Array | number[] | string, enc?: "hex" |
|
|
|
390
395
|
* @example
|
|
391
396
|
* const digest = sha512('Hello, world!');
|
|
392
397
|
*/
|
|
393
|
-
export declare const sha512: (msg:
|
|
398
|
+
export declare const sha512: (msg: HashInput, enc?: "hex" | "utf8") => number[];
|
|
394
399
|
/**
|
|
395
400
|
* Performs a 'double hash' using SHA256. This means the data is hashed twice
|
|
396
401
|
* with SHA256. First, the SHA256 hash of the message is computed, then the
|
|
@@ -404,7 +409,7 @@ export declare const sha512: (msg: number[] | string, enc?: "hex" | "utf8") => n
|
|
|
404
409
|
* @example
|
|
405
410
|
* const doubleHash = hash256('Hello, world!');
|
|
406
411
|
*/
|
|
407
|
-
export declare const hash256: (msg:
|
|
412
|
+
export declare const hash256: (msg: HashInput, enc?: "hex" | "utf8") => number[];
|
|
408
413
|
/**
|
|
409
414
|
* Computes SHA256 hash of a given message and then computes a RIPEMD160 hash of the result.
|
|
410
415
|
*
|
|
@@ -417,7 +422,7 @@ export declare const hash256: (msg: Uint8Array | number[] | string, enc?: "hex"
|
|
|
417
422
|
* @example
|
|
418
423
|
* const hash = hash160('Hello, world!');
|
|
419
424
|
*/
|
|
420
|
-
export declare const hash160: (msg:
|
|
425
|
+
export declare const hash160: (msg: HashInput, enc?: "hex" | "utf8") => number[];
|
|
421
426
|
/**
|
|
422
427
|
* Computes SHA256 HMAC of a given message with a given key.
|
|
423
428
|
* @function sha256hmac
|
|
@@ -430,7 +435,7 @@ export declare const hash160: (msg: Uint8Array | number[] | string, enc?: "hex"
|
|
|
430
435
|
* @example
|
|
431
436
|
* const digest = sha256hmac('deadbeef', 'ffff001d');
|
|
432
437
|
*/
|
|
433
|
-
export declare const sha256hmac: (key:
|
|
438
|
+
export declare const sha256hmac: (key: HashInput, msg: HashInput, enc?: "hex") => number[];
|
|
434
439
|
/**
|
|
435
440
|
* Computes SHA512 HMAC of a given message with a given key.
|
|
436
441
|
* @function sha512hmac
|
|
@@ -443,7 +448,7 @@ export declare const sha256hmac: (key: Uint8Array | number[] | string, msg: Uint
|
|
|
443
448
|
* @example
|
|
444
449
|
* const digest = sha512hmac('deadbeef', 'ffff001d');
|
|
445
450
|
*/
|
|
446
|
-
export declare const sha512hmac: (key:
|
|
451
|
+
export declare const sha512hmac: (key: HashInput, msg: HashInput, enc?: "hex") => number[];
|
|
447
452
|
/**
|
|
448
453
|
* Limited SHA-512-only PBKDF2 function for use in deprecated BIP39 code.
|
|
449
454
|
* @function pbkdf2
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Hash.d.ts","sourceRoot":"","sources":["../../../../src/primitives/Hash.ts"],"names":[],"mappings":"AAcA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,uBAAe,QAAQ;IACrB,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;IACxB,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,KAAK,GAAG,QAAQ,CAAA;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,MAAM,CAAA;gBAGlB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM;IAcnB,OAAO,CAAE,GAAG,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAI5C,OAAO,IAAK,MAAM,EAAE;IAIpB,UAAU,IAAK,MAAM;IAIrB;;;;;;;;;;;;OAYG;IACH,MAAM,CAAE,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,IAAI;IA8B3D;;;;;;;;;OASG;IACH,MAAM,IAAK,MAAM,EAAE;IAOnB;;;;;;;;;OASG;IACH,SAAS,IAAK,MAAM;IAOpB;;;;;;;OAOG;IACH,OAAO,CAAC,IAAI;CA0Cb;
|
|
1
|
+
{"version":3,"file":"Hash.d.ts","sourceRoot":"","sources":["../../../../src/primitives/Hash.ts"],"names":[],"mappings":"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"}
|