@bsv/sdk 2.0.16 → 2.1.1
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 +14 -13
- 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 +172 -232
- package/dist/cjs/src/identity/ContactsManager.js.map +1 -1
- package/dist/cjs/src/identity/IdentityClient.js +122 -55
- 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 +139 -46
- 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 +140 -56
- 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/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 +172 -232
- package/dist/esm/src/identity/ContactsManager.js.map +1 -1
- package/dist/esm/src/identity/IdentityClient.js +122 -55
- 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 +139 -46
- 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 +140 -56
- 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/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 +18 -0
- package/dist/types/src/identity/ContactsManager.d.ts.map +1 -1
- package/dist/types/src/identity/IdentityClient.d.ts +47 -8
- 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 +59 -1
- 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 +3 -3
- 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/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 +2 -2
- package/dist/types/src/wallet/Wallet.interfaces.d.ts.map +1 -1
- package/dist/types/src/wallet/WalletClient.d.ts +7 -7
- 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 +8 -8
- 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/docs/reference/kvstore.md +1 -2
- package/docs/reference/primitives.md +0 -1
- package/docs/reference/script.md +0 -7
- package/docs/reference/transaction.md +2 -2
- package/package.json +29 -28
- 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 +194 -257
- package/src/identity/IdentityClient.ts +155 -66
- package/src/identity/__tests/IdentityClient.test.ts +25 -1
- 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 +182 -45
- 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 +152 -53
- 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/TransactionSignature.ts +16 -16
- 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 +2 -4
- package/src/wallet/WalletClient.ts +8 -8
- 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 +10 -10
- package/src/wallet/validationHelpers.ts +9 -9
- package/docs/swagger/dist/LICENSE +0 -21
- package/docs/swagger/dist/favicon-16x16.png +0 -0
- package/docs/swagger/dist/favicon-32x32.png +0 -0
- package/docs/swagger/dist/index.css +0 -16
- package/docs/swagger/dist/oauth2-redirect.html +0 -79
- package/docs/swagger/dist/swagger-initializer.js +0 -20
- package/docs/swagger/dist/swagger-ui-bundle.js +0 -2
- package/docs/swagger/dist/swagger-ui-bundle.js.map +0 -1
- package/docs/swagger/dist/swagger-ui-es-bundle-core.js +0 -3
- package/docs/swagger/dist/swagger-ui-es-bundle-core.js.map +0 -1
- package/docs/swagger/dist/swagger-ui-es-bundle.js +0 -2
- package/docs/swagger/dist/swagger-ui-es-bundle.js.map +0 -1
- package/docs/swagger/dist/swagger-ui-standalone-preset.js +0 -2
- package/docs/swagger/dist/swagger-ui-standalone-preset.js.map +0 -1
- package/docs/swagger/dist/swagger-ui.css +0 -3
- package/docs/swagger/dist/swagger-ui.css.map +0 -1
- package/docs/swagger/dist/swagger-ui.js +0 -2
- package/docs/swagger/dist/swagger-ui.js.map +0 -1
|
@@ -40,12 +40,12 @@ export default class WindowCWISubstrate implements WalletInterface {
|
|
|
40
40
|
private readonly CWI: WalletInterface
|
|
41
41
|
constructor() {
|
|
42
42
|
if (typeof window !== 'object') {
|
|
43
|
-
throw new
|
|
43
|
+
throw new TypeError(
|
|
44
44
|
'The window.CWI substrate requires a global window object.'
|
|
45
45
|
)
|
|
46
46
|
}
|
|
47
47
|
if (typeof window.CWI !== 'object') {
|
|
48
|
-
throw new
|
|
48
|
+
throw new TypeError(
|
|
49
49
|
'The window.CWI interface does not appear to be bound to the window object.'
|
|
50
50
|
)
|
|
51
51
|
}
|
|
@@ -258,7 +258,7 @@ export default class WindowCWISubstrate implements WalletInterface {
|
|
|
258
258
|
keyID?: KeyIDStringUnder800Bytes
|
|
259
259
|
privileged?: BooleanDefaultFalse
|
|
260
260
|
privilegedReason?: DescriptionString5to50Bytes
|
|
261
|
-
counterparty?: PubKeyHex
|
|
261
|
+
counterparty?: PubKeyHex
|
|
262
262
|
forSelf?: BooleanDefaultFalse
|
|
263
263
|
},
|
|
264
264
|
originator?: OriginatorDomainNameStringUnder250Bytes
|
|
@@ -314,7 +314,7 @@ export default class WindowCWISubstrate implements WalletInterface {
|
|
|
314
314
|
protocolID: [SecurityLevel, ProtocolString5To400Bytes]
|
|
315
315
|
keyID: KeyIDStringUnder800Bytes
|
|
316
316
|
privilegedReason?: DescriptionString5to50Bytes
|
|
317
|
-
counterparty?: PubKeyHex
|
|
317
|
+
counterparty?: PubKeyHex
|
|
318
318
|
privileged?: BooleanDefaultFalse
|
|
319
319
|
},
|
|
320
320
|
originator?: OriginatorDomainNameStringUnder250Bytes
|
|
@@ -328,7 +328,7 @@ export default class WindowCWISubstrate implements WalletInterface {
|
|
|
328
328
|
protocolID: [SecurityLevel, ProtocolString5To400Bytes]
|
|
329
329
|
keyID: KeyIDStringUnder800Bytes
|
|
330
330
|
privilegedReason?: DescriptionString5to50Bytes
|
|
331
|
-
counterparty?: PubKeyHex
|
|
331
|
+
counterparty?: PubKeyHex
|
|
332
332
|
privileged?: BooleanDefaultFalse
|
|
333
333
|
},
|
|
334
334
|
originator?: OriginatorDomainNameStringUnder250Bytes
|
|
@@ -342,7 +342,7 @@ export default class WindowCWISubstrate implements WalletInterface {
|
|
|
342
342
|
protocolID: [SecurityLevel, ProtocolString5To400Bytes]
|
|
343
343
|
keyID: KeyIDStringUnder800Bytes
|
|
344
344
|
privilegedReason?: DescriptionString5to50Bytes
|
|
345
|
-
counterparty?: PubKeyHex
|
|
345
|
+
counterparty?: PubKeyHex
|
|
346
346
|
privileged?: BooleanDefaultFalse
|
|
347
347
|
},
|
|
348
348
|
originator?: OriginatorDomainNameStringUnder250Bytes
|
|
@@ -357,7 +357,7 @@ export default class WindowCWISubstrate implements WalletInterface {
|
|
|
357
357
|
protocolID: [SecurityLevel, ProtocolString5To400Bytes]
|
|
358
358
|
keyID: KeyIDStringUnder800Bytes
|
|
359
359
|
privilegedReason?: DescriptionString5to50Bytes
|
|
360
|
-
counterparty?: PubKeyHex
|
|
360
|
+
counterparty?: PubKeyHex
|
|
361
361
|
privileged?: BooleanDefaultFalse
|
|
362
362
|
},
|
|
363
363
|
originator?: OriginatorDomainNameStringUnder250Bytes
|
|
@@ -372,7 +372,7 @@ export default class WindowCWISubstrate implements WalletInterface {
|
|
|
372
372
|
protocolID: [SecurityLevel, ProtocolString5To400Bytes]
|
|
373
373
|
keyID: KeyIDStringUnder800Bytes
|
|
374
374
|
privilegedReason?: DescriptionString5to50Bytes
|
|
375
|
-
counterparty?: PubKeyHex
|
|
375
|
+
counterparty?: PubKeyHex
|
|
376
376
|
privileged?: BooleanDefaultFalse
|
|
377
377
|
},
|
|
378
378
|
originator?: OriginatorDomainNameStringUnder250Bytes
|
|
@@ -388,7 +388,7 @@ export default class WindowCWISubstrate implements WalletInterface {
|
|
|
388
388
|
protocolID: [SecurityLevel, ProtocolString5To400Bytes]
|
|
389
389
|
keyID: KeyIDStringUnder800Bytes
|
|
390
390
|
privilegedReason?: DescriptionString5to50Bytes
|
|
391
|
-
counterparty?: PubKeyHex
|
|
391
|
+
counterparty?: PubKeyHex
|
|
392
392
|
forSelf?: BooleanDefaultFalse
|
|
393
393
|
privileged?: BooleanDefaultFalse
|
|
394
394
|
},
|
|
@@ -406,7 +406,7 @@ export default class WindowCWISubstrate implements WalletInterface {
|
|
|
406
406
|
signature: HexString
|
|
407
407
|
fields: Record<CertificateFieldNameUnder50Bytes, string>
|
|
408
408
|
certifier: PubKeyHex
|
|
409
|
-
keyringRevealer: PubKeyHex
|
|
409
|
+
keyringRevealer: PubKeyHex
|
|
410
410
|
keyringForSubject: Record<CertificateFieldNameUnder50Bytes, Base64String>
|
|
411
411
|
acquisitionProtocol: 'direct' | 'issuance'
|
|
412
412
|
certifierUrl?: string
|
|
@@ -274,7 +274,7 @@ export function validateBase64String (s: string, name: string, min?: number, max
|
|
|
274
274
|
|
|
275
275
|
let paddingCount = 0
|
|
276
276
|
for (let i = 0; i < s.length; i++) {
|
|
277
|
-
const char = s.
|
|
277
|
+
const char = s.codePointAt(i) ?? 0
|
|
278
278
|
if (char >= 65 && char <= 90) continue // A-Z
|
|
279
279
|
if (char >= 97 && char <= 122) continue // a-z
|
|
280
280
|
if (char >= 48 && char <= 57) continue // 0-9
|
|
@@ -392,7 +392,7 @@ export interface ValidCreateActionInput {
|
|
|
392
392
|
export function validateCreateActionInput (i: CreateActionInput): ValidCreateActionInput {
|
|
393
393
|
if (i.unlockingScript === undefined && i.unlockingScriptLength === undefined) { throw new WERR_INVALID_PARAMETER('unlockingScript, unlockingScriptLength', 'at least one valid value.') }
|
|
394
394
|
const unlockingScript = validateOptionalHexString(i.unlockingScript, 'unlockingScript')
|
|
395
|
-
const unlockingScriptLength = i.unlockingScriptLength ?? (unlockingScript
|
|
395
|
+
const unlockingScriptLength = i.unlockingScriptLength ?? (unlockingScript == null ? 0 : unlockingScript.length / 2)
|
|
396
396
|
if (unlockingScript && unlockingScriptLength !== unlockingScript.length / 2) { throw new WERR_INVALID_PARAMETER('unlockingScriptLength', 'length unlockingScript if both valid.') }
|
|
397
397
|
const vi: ValidCreateActionInput = {
|
|
398
398
|
outpoint: parseWalletOutpoint(i.outpoint),
|
|
@@ -439,7 +439,7 @@ export function validateCreateActionOutput (o: CreateActionOutput): ValidCreateA
|
|
|
439
439
|
* @returns ValidCreateActionOptions with defaults applied
|
|
440
440
|
*/
|
|
441
441
|
export function validateCreateActionOptions (options?: CreateActionOptions): ValidCreateActionOptions {
|
|
442
|
-
const o = options
|
|
442
|
+
const o = options ?? {}
|
|
443
443
|
const vo: ValidCreateActionOptions = {
|
|
444
444
|
signAndProcess: defaultTrue(o.signAndProcess),
|
|
445
445
|
acceptDelayedBroadcast: defaultTrue(o.acceptDelayedBroadcast),
|
|
@@ -566,7 +566,7 @@ export function validateCreateActionArgs (args: CreateActionArgs, logger?: Walle
|
|
|
566
566
|
* Convert string outpoints to `{ txid: string, vout: number }`
|
|
567
567
|
*/
|
|
568
568
|
export function validateSignActionOptions (options?: SignActionOptions): ValidSignActionOptions {
|
|
569
|
-
const o = options
|
|
569
|
+
const o = options ?? {}
|
|
570
570
|
const vo: ValidSignActionOptions = {
|
|
571
571
|
acceptDelayedBroadcast: defaultTrue(o.acceptDelayedBroadcast),
|
|
572
572
|
returnTXIDOnly: defaultFalse(o.returnTXIDOnly),
|
|
@@ -657,7 +657,7 @@ export function validateBasketInsertion (args?: BasketInsertion): ValidBasketIns
|
|
|
657
657
|
if (args === undefined) return undefined
|
|
658
658
|
const v: ValidBasketInsertion = {
|
|
659
659
|
basket: validateBasket(args.basket),
|
|
660
|
-
customInstructions: validateOptionalStringLength(args.customInstructions, 'customInstructions', 0, 1000),
|
|
660
|
+
customInstructions: validateOptionalStringLength(args.customInstructions, 'customInstructions', 0, 1000),
|
|
661
661
|
tags: defaultEmpty(args.tags).map(t => validateTag(t))
|
|
662
662
|
}
|
|
663
663
|
return v
|
|
@@ -724,7 +724,7 @@ export function validateInternalizeActionArgs (args: InternalizeActionArgs): Val
|
|
|
724
724
|
tx: args.tx,
|
|
725
725
|
outputs: args.outputs.map(o => validateInternalizeOutput(o)),
|
|
726
726
|
description: validateStringLength(args.description, 'description', 5, 2000),
|
|
727
|
-
labels: (args.labels
|
|
727
|
+
labels: (args.labels ?? []).map(t => validateLabel(t)),
|
|
728
728
|
seekPermission: defaultTrue(args.seekPermission)
|
|
729
729
|
}
|
|
730
730
|
|
|
@@ -1126,7 +1126,7 @@ export function validateListOutputsArgs (args: ListOutputsArgs): ValidListOutput
|
|
|
1126
1126
|
|
|
1127
1127
|
const vargs: ValidListOutputsArgs = {
|
|
1128
1128
|
basket: validateBasket(args.basket),
|
|
1129
|
-
tags: (args.tags
|
|
1129
|
+
tags: (args.tags ?? []).map(t => validateTag(t)),
|
|
1130
1130
|
tagQueryMode,
|
|
1131
1131
|
includeLockingScripts: args.include === 'locking scripts',
|
|
1132
1132
|
includeTransactions: args.include === 'entire transactions',
|
|
@@ -1134,7 +1134,7 @@ export function validateListOutputsArgs (args: ListOutputsArgs): ValidListOutput
|
|
|
1134
1134
|
includeTags: defaultFalse(args.includeTags),
|
|
1135
1135
|
includeLabels: defaultFalse(args.includeLabels),
|
|
1136
1136
|
limit: validateInteger(args.limit, 'limit', 10, 1, 10000),
|
|
1137
|
-
offset: validateInteger(args.offset, 'offset', 0
|
|
1137
|
+
offset: validateInteger(args.offset, 'offset', 0),
|
|
1138
1138
|
seekPermission: defaultTrue(args.seekPermission),
|
|
1139
1139
|
knownTxids: []
|
|
1140
1140
|
}
|
|
@@ -1176,7 +1176,7 @@ export function validateListActionsArgs (args: ListActionsArgs): ValidListAction
|
|
|
1176
1176
|
else throw new WERR_INVALID_PARAMETER('labelQueryMode', 'undefined, \'any\', or \'all\'')
|
|
1177
1177
|
|
|
1178
1178
|
const vargs: ValidListActionsArgs = {
|
|
1179
|
-
labels: (args.labels
|
|
1179
|
+
labels: (args.labels ?? []).map(t => validateLabel(t)),
|
|
1180
1180
|
labelQueryMode,
|
|
1181
1181
|
includeLabels: defaultFalse(args.includeLabels),
|
|
1182
1182
|
includeInputs: defaultFalse(args.includeInputs),
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2024 Peter Evans
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
Binary file
|
|
Binary file
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
<!doctype html>
|
|
2
|
-
<html lang="en-US">
|
|
3
|
-
<head>
|
|
4
|
-
<title>Swagger UI: OAuth2 Redirect</title>
|
|
5
|
-
</head>
|
|
6
|
-
<body>
|
|
7
|
-
<script>
|
|
8
|
-
'use strict';
|
|
9
|
-
function run () {
|
|
10
|
-
var oauth2 = window.opener.swaggerUIRedirectOauth2;
|
|
11
|
-
var sentState = oauth2.state;
|
|
12
|
-
var redirectUrl = oauth2.redirectUrl;
|
|
13
|
-
var isValid, qp, arr;
|
|
14
|
-
|
|
15
|
-
if (/code|token|error/.test(window.location.hash)) {
|
|
16
|
-
qp = window.location.hash.substring(1).replace('?', '&');
|
|
17
|
-
} else {
|
|
18
|
-
qp = location.search.substring(1);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
arr = qp.split("&");
|
|
22
|
-
arr.forEach(function (v,i,_arr) { _arr[i] = '"' + v.replace('=', '":"') + '"';});
|
|
23
|
-
qp = qp ? JSON.parse('{' + arr.join() + '}',
|
|
24
|
-
function (key, value) {
|
|
25
|
-
return key === "" ? value : decodeURIComponent(value);
|
|
26
|
-
}
|
|
27
|
-
) : {};
|
|
28
|
-
|
|
29
|
-
isValid = qp.state === sentState;
|
|
30
|
-
|
|
31
|
-
if ((
|
|
32
|
-
oauth2.auth.schema.get("flow") === "accessCode" ||
|
|
33
|
-
oauth2.auth.schema.get("flow") === "authorizationCode" ||
|
|
34
|
-
oauth2.auth.schema.get("flow") === "authorization_code"
|
|
35
|
-
) && !oauth2.auth.code) {
|
|
36
|
-
if (!isValid) {
|
|
37
|
-
oauth2.errCb({
|
|
38
|
-
authId: oauth2.auth.name,
|
|
39
|
-
source: "auth",
|
|
40
|
-
level: "warning",
|
|
41
|
-
message: "Authorization may be unsafe, passed state was changed in server. The passed state wasn't returned from auth server."
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
if (qp.code) {
|
|
46
|
-
delete oauth2.state;
|
|
47
|
-
oauth2.auth.code = qp.code;
|
|
48
|
-
oauth2.callback({auth: oauth2.auth, redirectUrl: redirectUrl});
|
|
49
|
-
} else {
|
|
50
|
-
let oauthErrorMsg;
|
|
51
|
-
if (qp.error) {
|
|
52
|
-
oauthErrorMsg = "["+qp.error+"]: " +
|
|
53
|
-
(qp.error_description ? qp.error_description+ ". " : "no accessCode received from the server. ") +
|
|
54
|
-
(qp.error_uri ? "More info: "+qp.error_uri : "");
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
oauth2.errCb({
|
|
58
|
-
authId: oauth2.auth.name,
|
|
59
|
-
source: "auth",
|
|
60
|
-
level: "error",
|
|
61
|
-
message: oauthErrorMsg || "[Authorization failed]: no accessCode received from the server."
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
} else {
|
|
65
|
-
oauth2.callback({auth: oauth2.auth, token: qp, isValid: isValid, redirectUrl: redirectUrl});
|
|
66
|
-
}
|
|
67
|
-
window.close();
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
if (document.readyState !== 'loading') {
|
|
71
|
-
run();
|
|
72
|
-
} else {
|
|
73
|
-
document.addEventListener('DOMContentLoaded', function () {
|
|
74
|
-
run();
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
</script>
|
|
78
|
-
</body>
|
|
79
|
-
</html>
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
window.onload = function() {
|
|
2
|
-
//<editor-fold desc="Changeable Configuration Block">
|
|
3
|
-
|
|
4
|
-
// the following lines will be replaced by docker/configurator, when it runs in a docker-container
|
|
5
|
-
window.ui = SwaggerUIBundle({
|
|
6
|
-
url: "swagger.yaml",
|
|
7
|
-
dom_id: '#swagger-ui',
|
|
8
|
-
deepLinking: true,
|
|
9
|
-
presets: [
|
|
10
|
-
SwaggerUIBundle.presets.apis,
|
|
11
|
-
SwaggerUIStandalonePreset
|
|
12
|
-
],
|
|
13
|
-
plugins: [
|
|
14
|
-
SwaggerUIBundle.plugins.DownloadUrl
|
|
15
|
-
],
|
|
16
|
-
layout: "StandaloneLayout"
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
//</editor-fold>
|
|
20
|
-
};
|