@bsv/sdk 1.3.12 → 1.3.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/package.json +15 -3
- package/dist/cjs/src/auth/Peer.js +83 -57
- package/dist/cjs/src/auth/Peer.js.map +1 -1
- package/dist/cjs/src/auth/SessionManager.js +14 -9
- package/dist/cjs/src/auth/SessionManager.js.map +1 -1
- package/dist/cjs/src/auth/certificates/Certificate.js +16 -10
- package/dist/cjs/src/auth/certificates/Certificate.js.map +1 -1
- package/dist/cjs/src/auth/certificates/MasterCertificate.js +25 -23
- package/dist/cjs/src/auth/certificates/MasterCertificate.js.map +1 -1
- package/dist/cjs/src/auth/certificates/VerifiableCertificate.js +2 -2
- package/dist/cjs/src/auth/certificates/VerifiableCertificate.js.map +1 -1
- package/dist/cjs/src/auth/certificates/__tests/CompletedProtoWallet.js +62 -46
- package/dist/cjs/src/auth/certificates/__tests/CompletedProtoWallet.js.map +1 -1
- package/dist/cjs/src/auth/clients/AuthFetch.js +1 -0
- package/dist/cjs/src/auth/clients/AuthFetch.js.map +1 -1
- package/dist/cjs/src/auth/transports/SimplifiedFetchTransport.js +70 -43
- package/dist/cjs/src/auth/transports/SimplifiedFetchTransport.js.map +1 -1
- package/dist/cjs/src/auth/utils/createNonce.js +2 -1
- package/dist/cjs/src/auth/utils/createNonce.js.map +1 -1
- package/dist/cjs/src/auth/utils/getVerifiableCertificates.js.map +1 -1
- package/dist/cjs/src/auth/utils/validateCertificates.js +5 -2
- package/dist/cjs/src/auth/utils/validateCertificates.js.map +1 -1
- package/dist/cjs/src/auth/utils/verifyNonce.js +2 -1
- package/dist/cjs/src/auth/utils/verifyNonce.js.map +1 -1
- package/dist/cjs/src/compat/BSM.js +7 -17
- package/dist/cjs/src/compat/BSM.js.map +1 -1
- package/dist/cjs/src/compat/ECIES.js +172 -133
- package/dist/cjs/src/compat/ECIES.js.map +1 -1
- package/dist/cjs/src/compat/HD.js +63 -73
- package/dist/cjs/src/compat/HD.js.map +1 -1
- package/dist/cjs/src/compat/Mnemonic.js +102 -106
- package/dist/cjs/src/compat/Mnemonic.js.map +1 -1
- package/dist/cjs/src/compat/Utxo.js +2 -2
- package/dist/cjs/src/compat/Utxo.js.map +1 -1
- package/dist/cjs/src/compat/index.js +7 -17
- package/dist/cjs/src/compat/index.js.map +1 -1
- package/dist/cjs/src/messages/EncryptedMessage.js +3 -1
- package/dist/cjs/src/messages/EncryptedMessage.js.map +1 -1
- package/dist/cjs/src/messages/SignedMessage.js +1 -0
- package/dist/cjs/src/messages/SignedMessage.js.map +1 -1
- package/dist/cjs/src/messages/index.js +7 -17
- package/dist/cjs/src/messages/index.js.map +1 -1
- package/dist/cjs/src/overlay-tools/LookupResolver.js +54 -35
- package/dist/cjs/src/overlay-tools/LookupResolver.js.map +1 -1
- package/dist/cjs/src/overlay-tools/OverlayAdminTokenTemplate.js +32 -20
- package/dist/cjs/src/overlay-tools/OverlayAdminTokenTemplate.js.map +1 -1
- package/dist/cjs/src/overlay-tools/SHIPBroadcaster.js +40 -28
- package/dist/cjs/src/overlay-tools/SHIPBroadcaster.js.map +1 -1
- package/dist/cjs/src/primitives/AESGCM.js +6 -5
- package/dist/cjs/src/primitives/AESGCM.js.map +1 -1
- package/dist/cjs/src/primitives/BasePoint.js +1 -1
- package/dist/cjs/src/primitives/BasePoint.js.map +1 -1
- package/dist/cjs/src/primitives/BigNumber.js +50 -62
- package/dist/cjs/src/primitives/BigNumber.js.map +1 -1
- package/dist/cjs/src/primitives/Curve.js +46 -22
- package/dist/cjs/src/primitives/Curve.js.map +1 -1
- package/dist/cjs/src/primitives/DRBG.js +2 -8
- package/dist/cjs/src/primitives/DRBG.js.map +1 -1
- package/dist/cjs/src/primitives/ECDSA.js +51 -35
- package/dist/cjs/src/primitives/ECDSA.js.map +1 -1
- package/dist/cjs/src/primitives/Hash.js +191 -216
- package/dist/cjs/src/primitives/Hash.js.map +1 -1
- package/dist/cjs/src/primitives/JacobianPoint.js +19 -5
- package/dist/cjs/src/primitives/JacobianPoint.js.map +1 -1
- package/dist/cjs/src/primitives/K256.js.map +1 -1
- package/dist/cjs/src/primitives/Mersenne.js.map +1 -1
- package/dist/cjs/src/primitives/MontgomoryMethod.js.map +1 -1
- package/dist/cjs/src/primitives/Point.js +117 -88
- package/dist/cjs/src/primitives/Point.js.map +1 -1
- package/dist/cjs/src/primitives/Polynomial.js +4 -2
- package/dist/cjs/src/primitives/Polynomial.js.map +1 -1
- package/dist/cjs/src/primitives/PrivateKey.js +32 -33
- package/dist/cjs/src/primitives/PrivateKey.js.map +1 -1
- package/dist/cjs/src/primitives/PublicKey.js.map +1 -1
- package/dist/cjs/src/primitives/Random.js +6 -5
- package/dist/cjs/src/primitives/Random.js.map +1 -1
- package/dist/cjs/src/primitives/ReductionContext.js +1 -1
- package/dist/cjs/src/primitives/ReductionContext.js.map +1 -1
- package/dist/cjs/src/primitives/Schnorr.js +21 -15
- package/dist/cjs/src/primitives/Schnorr.js.map +1 -1
- package/dist/cjs/src/primitives/Signature.js +8 -7
- package/dist/cjs/src/primitives/Signature.js.map +1 -1
- package/dist/cjs/src/primitives/SymmetricKey.js +13 -13
- package/dist/cjs/src/primitives/SymmetricKey.js.map +1 -1
- package/dist/cjs/src/primitives/TransactionSignature.js +31 -29
- package/dist/cjs/src/primitives/TransactionSignature.js.map +1 -1
- package/dist/cjs/src/primitives/index.js +7 -17
- package/dist/cjs/src/primitives/index.js.map +1 -1
- package/dist/cjs/src/primitives/utils.js +79 -68
- package/dist/cjs/src/primitives/utils.js.map +1 -1
- package/dist/cjs/src/script/OP.js +3 -3
- package/dist/cjs/src/script/OP.js.map +1 -1
- package/dist/cjs/src/script/Script.js +12 -10
- package/dist/cjs/src/script/Script.js.map +1 -1
- package/dist/cjs/src/script/Spend.js +47 -49
- package/dist/cjs/src/script/Spend.js.map +1 -1
- package/dist/cjs/src/script/templates/P2PKH.js +24 -12
- package/dist/cjs/src/script/templates/P2PKH.js.map +1 -1
- package/dist/cjs/src/script/templates/PushDrop.js +28 -23
- package/dist/cjs/src/script/templates/PushDrop.js.map +1 -1
- package/dist/cjs/src/script/templates/RPuzzle.js +10 -6
- package/dist/cjs/src/script/templates/RPuzzle.js.map +1 -1
- package/dist/cjs/src/totp/totp.js +2 -1
- package/dist/cjs/src/totp/totp.js.map +1 -1
- package/dist/cjs/src/transaction/Beef.js +177 -154
- package/dist/cjs/src/transaction/Beef.js.map +1 -1
- package/dist/cjs/src/transaction/BeefParty.js +24 -24
- package/dist/cjs/src/transaction/BeefParty.js.map +1 -1
- package/dist/cjs/src/transaction/BeefTx.js +26 -18
- package/dist/cjs/src/transaction/BeefTx.js.map +1 -1
- package/dist/cjs/src/transaction/Broadcaster.js +3 -2
- package/dist/cjs/src/transaction/Broadcaster.js.map +1 -1
- package/dist/cjs/src/transaction/MerklePath.js +64 -37
- package/dist/cjs/src/transaction/MerklePath.js.map +1 -1
- package/dist/cjs/src/transaction/Transaction.js +111 -137
- package/dist/cjs/src/transaction/Transaction.js.map +1 -1
- package/dist/cjs/src/transaction/broadcasters/ARC.js +25 -16
- package/dist/cjs/src/transaction/broadcasters/ARC.js.map +1 -1
- package/dist/cjs/src/transaction/broadcasters/DefaultBroadcaster.js +2 -1
- package/dist/cjs/src/transaction/broadcasters/DefaultBroadcaster.js.map +1 -1
- package/dist/cjs/src/transaction/broadcasters/WhatsOnChainBroadcaster.js.map +1 -1
- package/dist/cjs/src/transaction/chaintrackers/DefaultChainTracker.js +2 -1
- package/dist/cjs/src/transaction/chaintrackers/DefaultChainTracker.js.map +1 -1
- package/dist/cjs/src/transaction/chaintrackers/WhatsOnChain.js +3 -3
- package/dist/cjs/src/transaction/chaintrackers/WhatsOnChain.js.map +1 -1
- package/dist/cjs/src/transaction/fee-models/SatoshisPerKilobyte.js.map +1 -1
- package/dist/cjs/src/transaction/http/DefaultHttpClient.js +5 -3
- package/dist/cjs/src/transaction/http/DefaultHttpClient.js.map +1 -1
- package/dist/cjs/src/transaction/http/FetchHttpClient.js +5 -2
- package/dist/cjs/src/transaction/http/FetchHttpClient.js.map +1 -1
- package/dist/cjs/src/transaction/http/NodejsHttpClient.js +5 -3
- package/dist/cjs/src/transaction/http/NodejsHttpClient.js.map +1 -1
- package/dist/cjs/src/transaction/http/index.js.map +1 -1
- package/dist/cjs/src/transaction/index.js.map +1 -1
- package/dist/cjs/src/wallet/CachedKeyDeriver.js +91 -66
- package/dist/cjs/src/wallet/CachedKeyDeriver.js.map +1 -1
- package/dist/cjs/src/wallet/KeyDeriver.js +61 -52
- package/dist/cjs/src/wallet/KeyDeriver.js.map +1 -1
- package/dist/cjs/src/wallet/ProtoWallet.js +79 -29
- package/dist/cjs/src/wallet/ProtoWallet.js.map +1 -1
- package/dist/cjs/src/wallet/WalletClient.js +7 -2
- package/dist/cjs/src/wallet/WalletClient.js.map +1 -1
- package/dist/cjs/src/wallet/WalletError.js +2 -2
- package/dist/cjs/src/wallet/WalletError.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/HTTPWalletJSON.js +4 -3
- package/dist/cjs/src/wallet/substrates/HTTPWalletJSON.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/HTTPWalletWire.js +2 -2
- package/dist/cjs/src/wallet/substrates/HTTPWalletWire.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/WalletWireProcessor.js +1239 -1261
- package/dist/cjs/src/wallet/substrates/WalletWireProcessor.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/WalletWireTransceiver.js +102 -43
- package/dist/cjs/src/wallet/substrates/WalletWireTransceiver.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/XDM.js +8 -3
- package/dist/cjs/src/wallet/substrates/XDM.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/window.CWI.js +28 -28
- package/dist/cjs/src/wallet/substrates/window.CWI.js.map +1 -1
- package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/esm/mod.js +15 -15
- package/dist/esm/src/auth/Peer.js +75 -54
- package/dist/esm/src/auth/Peer.js.map +1 -1
- package/dist/esm/src/auth/SessionManager.js +14 -9
- package/dist/esm/src/auth/SessionManager.js.map +1 -1
- package/dist/esm/src/auth/certificates/Certificate.js +15 -11
- package/dist/esm/src/auth/certificates/Certificate.js.map +1 -1
- package/dist/esm/src/auth/certificates/MasterCertificate.js +25 -23
- package/dist/esm/src/auth/certificates/MasterCertificate.js.map +1 -1
- package/dist/esm/src/auth/certificates/VerifiableCertificate.js +2 -2
- package/dist/esm/src/auth/certificates/VerifiableCertificate.js.map +1 -1
- package/dist/esm/src/auth/certificates/__tests/CompletedProtoWallet.js +64 -47
- package/dist/esm/src/auth/certificates/__tests/CompletedProtoWallet.js.map +1 -1
- package/dist/esm/src/auth/clients/AuthFetch.js +1 -0
- package/dist/esm/src/auth/clients/AuthFetch.js.map +1 -1
- package/dist/esm/src/auth/transports/SimplifiedFetchTransport.js +69 -43
- package/dist/esm/src/auth/transports/SimplifiedFetchTransport.js.map +1 -1
- package/dist/esm/src/auth/utils/createNonce.js.map +1 -1
- package/dist/esm/src/auth/utils/getVerifiableCertificates.js +1 -1
- package/dist/esm/src/auth/utils/getVerifiableCertificates.js.map +1 -1
- package/dist/esm/src/auth/utils/validateCertificates.js +6 -3
- package/dist/esm/src/auth/utils/validateCertificates.js.map +1 -1
- package/dist/esm/src/auth/utils/verifyNonce.js.map +1 -1
- package/dist/esm/src/compat/BSM.js.map +1 -1
- package/dist/esm/src/compat/ECIES.js +165 -116
- package/dist/esm/src/compat/ECIES.js.map +1 -1
- package/dist/esm/src/compat/HD.js +56 -56
- package/dist/esm/src/compat/HD.js.map +1 -1
- package/dist/esm/src/compat/Mnemonic.js +95 -89
- package/dist/esm/src/compat/Mnemonic.js.map +1 -1
- package/dist/esm/src/compat/Utxo.js +1 -1
- package/dist/esm/src/compat/Utxo.js.map +1 -1
- package/dist/esm/src/messages/EncryptedMessage.js +3 -1
- package/dist/esm/src/messages/EncryptedMessage.js.map +1 -1
- package/dist/esm/src/messages/SignedMessage.js +1 -0
- package/dist/esm/src/messages/SignedMessage.js.map +1 -1
- package/dist/esm/src/overlay-tools/LookupResolver.js +53 -35
- package/dist/esm/src/overlay-tools/LookupResolver.js.map +1 -1
- package/dist/esm/src/overlay-tools/OverlayAdminTokenTemplate.js +32 -20
- package/dist/esm/src/overlay-tools/OverlayAdminTokenTemplate.js.map +1 -1
- package/dist/esm/src/overlay-tools/SHIPBroadcaster.js +40 -28
- package/dist/esm/src/overlay-tools/SHIPBroadcaster.js.map +1 -1
- package/dist/esm/src/primitives/AESGCM.js +1 -0
- package/dist/esm/src/primitives/AESGCM.js.map +1 -1
- package/dist/esm/src/primitives/BasePoint.js +1 -1
- package/dist/esm/src/primitives/BasePoint.js.map +1 -1
- package/dist/esm/src/primitives/BigNumber.js +50 -62
- package/dist/esm/src/primitives/BigNumber.js.map +1 -1
- package/dist/esm/src/primitives/Curve.js +45 -22
- package/dist/esm/src/primitives/Curve.js.map +1 -1
- package/dist/esm/src/primitives/DRBG.js +2 -8
- package/dist/esm/src/primitives/DRBG.js.map +1 -1
- package/dist/esm/src/primitives/ECDSA.js +50 -35
- package/dist/esm/src/primitives/ECDSA.js.map +1 -1
- package/dist/esm/src/primitives/Hash.js +188 -213
- package/dist/esm/src/primitives/Hash.js.map +1 -1
- package/dist/esm/src/primitives/JacobianPoint.js +18 -5
- package/dist/esm/src/primitives/JacobianPoint.js.map +1 -1
- package/dist/esm/src/primitives/K256.js.map +1 -1
- package/dist/esm/src/primitives/Mersenne.js.map +1 -1
- package/dist/esm/src/primitives/MontgomoryMethod.js.map +1 -1
- package/dist/esm/src/primitives/Point.js +107 -88
- package/dist/esm/src/primitives/Point.js.map +1 -1
- package/dist/esm/src/primitives/Polynomial.js +4 -2
- package/dist/esm/src/primitives/Polynomial.js.map +1 -1
- package/dist/esm/src/primitives/PrivateKey.js +25 -16
- package/dist/esm/src/primitives/PrivateKey.js.map +1 -1
- package/dist/esm/src/primitives/PublicKey.js.map +1 -1
- package/dist/esm/src/primitives/Random.js +7 -6
- package/dist/esm/src/primitives/Random.js.map +1 -1
- package/dist/esm/src/primitives/ReductionContext.js +1 -1
- package/dist/esm/src/primitives/ReductionContext.js.map +1 -1
- package/dist/esm/src/primitives/Schnorr.js +21 -15
- package/dist/esm/src/primitives/Schnorr.js.map +1 -1
- package/dist/esm/src/primitives/Signature.js +8 -7
- package/dist/esm/src/primitives/Signature.js.map +1 -1
- package/dist/esm/src/primitives/SymmetricKey.js +13 -13
- package/dist/esm/src/primitives/SymmetricKey.js.map +1 -1
- package/dist/esm/src/primitives/TransactionSignature.js +22 -12
- package/dist/esm/src/primitives/TransactionSignature.js.map +1 -1
- package/dist/esm/src/primitives/utils.js +76 -66
- package/dist/esm/src/primitives/utils.js.map +1 -1
- package/dist/esm/src/script/OP.js +3 -3
- package/dist/esm/src/script/OP.js.map +1 -1
- package/dist/esm/src/script/Script.js +12 -10
- package/dist/esm/src/script/Script.js.map +1 -1
- package/dist/esm/src/script/Spend.js +39 -32
- package/dist/esm/src/script/Spend.js.map +1 -1
- package/dist/esm/src/script/templates/P2PKH.js +26 -11
- package/dist/esm/src/script/templates/P2PKH.js.map +1 -1
- package/dist/esm/src/script/templates/PushDrop.js +29 -22
- package/dist/esm/src/script/templates/PushDrop.js.map +1 -1
- package/dist/esm/src/script/templates/RPuzzle.js +11 -6
- package/dist/esm/src/script/templates/RPuzzle.js.map +1 -1
- package/dist/esm/src/totp/totp.js +2 -1
- package/dist/esm/src/totp/totp.js.map +1 -1
- package/dist/esm/src/transaction/Beef.js +176 -154
- package/dist/esm/src/transaction/Beef.js.map +1 -1
- package/dist/esm/src/transaction/BeefParty.js +24 -24
- package/dist/esm/src/transaction/BeefParty.js.map +1 -1
- package/dist/esm/src/transaction/BeefTx.js +26 -18
- package/dist/esm/src/transaction/BeefTx.js.map +1 -1
- package/dist/esm/src/transaction/Broadcaster.js.map +1 -1
- package/dist/esm/src/transaction/MerklePath.js +61 -36
- package/dist/esm/src/transaction/MerklePath.js.map +1 -1
- package/dist/esm/src/transaction/Transaction.js +105 -138
- package/dist/esm/src/transaction/Transaction.js.map +1 -1
- package/dist/esm/src/transaction/broadcasters/ARC.js +25 -16
- package/dist/esm/src/transaction/broadcasters/ARC.js.map +1 -1
- package/dist/esm/src/transaction/broadcasters/DefaultBroadcaster.js.map +1 -1
- package/dist/esm/src/transaction/broadcasters/WhatsOnChainBroadcaster.js.map +1 -1
- package/dist/esm/src/transaction/chaintrackers/WhatsOnChain.js +3 -3
- package/dist/esm/src/transaction/chaintrackers/WhatsOnChain.js.map +1 -1
- package/dist/esm/src/transaction/fee-models/SatoshisPerKilobyte.js.map +1 -1
- package/dist/esm/src/transaction/http/DefaultHttpClient.js +3 -2
- package/dist/esm/src/transaction/http/DefaultHttpClient.js.map +1 -1
- package/dist/esm/src/transaction/http/FetchHttpClient.js +4 -2
- package/dist/esm/src/transaction/http/FetchHttpClient.js.map +1 -1
- package/dist/esm/src/transaction/http/NodejsHttpClient.js +5 -3
- package/dist/esm/src/transaction/http/NodejsHttpClient.js.map +1 -1
- package/dist/esm/src/transaction/http/index.js.map +1 -1
- package/dist/esm/src/transaction/index.js.map +1 -1
- package/dist/esm/src/wallet/CachedKeyDeriver.js +91 -66
- package/dist/esm/src/wallet/CachedKeyDeriver.js.map +1 -1
- package/dist/esm/src/wallet/KeyDeriver.js +60 -52
- package/dist/esm/src/wallet/KeyDeriver.js.map +1 -1
- package/dist/esm/src/wallet/ProtoWallet.js +75 -29
- package/dist/esm/src/wallet/ProtoWallet.js.map +1 -1
- package/dist/esm/src/wallet/WalletClient.js +7 -2
- package/dist/esm/src/wallet/WalletClient.js.map +1 -1
- package/dist/esm/src/wallet/WalletError.js +2 -2
- package/dist/esm/src/wallet/WalletError.js.map +1 -1
- package/dist/esm/src/wallet/substrates/HTTPWalletJSON.js +4 -4
- package/dist/esm/src/wallet/substrates/HTTPWalletJSON.js.map +1 -1
- package/dist/esm/src/wallet/substrates/HTTPWalletWire.js +2 -2
- package/dist/esm/src/wallet/substrates/HTTPWalletWire.js.map +1 -1
- package/dist/esm/src/wallet/substrates/WalletWireProcessor.js +1239 -1261
- package/dist/esm/src/wallet/substrates/WalletWireProcessor.js.map +1 -1
- package/dist/esm/src/wallet/substrates/WalletWireTransceiver.js +95 -43
- package/dist/esm/src/wallet/substrates/WalletWireTransceiver.js.map +1 -1
- package/dist/esm/src/wallet/substrates/XDM.js +8 -3
- package/dist/esm/src/wallet/substrates/XDM.js.map +1 -1
- package/dist/esm/src/wallet/substrates/window.CWI.js +28 -28
- package/dist/esm/src/wallet/substrates/window.CWI.js.map +1 -1
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/dist/types/mod.d.ts +15 -15
- package/dist/types/src/auth/Peer.d.ts +10 -10
- package/dist/types/src/auth/Peer.d.ts.map +1 -1
- package/dist/types/src/auth/SessionManager.d.ts +4 -4
- package/dist/types/src/auth/SessionManager.d.ts.map +1 -1
- package/dist/types/src/auth/certificates/Certificate.d.ts +6 -6
- package/dist/types/src/auth/certificates/Certificate.d.ts.map +1 -1
- package/dist/types/src/auth/certificates/MasterCertificate.d.ts +5 -5
- package/dist/types/src/auth/certificates/MasterCertificate.d.ts.map +1 -1
- package/dist/types/src/auth/certificates/VerifiableCertificate.d.ts.map +1 -1
- package/dist/types/src/auth/certificates/__tests/CompletedProtoWallet.d.ts +23 -22
- package/dist/types/src/auth/certificates/__tests/CompletedProtoWallet.d.ts.map +1 -1
- package/dist/types/src/auth/clients/AuthFetch.d.ts.map +1 -1
- package/dist/types/src/auth/transports/SimplifiedFetchTransport.d.ts +1 -1
- package/dist/types/src/auth/transports/SimplifiedFetchTransport.d.ts.map +1 -1
- package/dist/types/src/auth/utils/createNonce.d.ts.map +1 -1
- package/dist/types/src/auth/utils/getVerifiableCertificates.d.ts +3 -3
- package/dist/types/src/auth/utils/getVerifiableCertificates.d.ts.map +1 -1
- package/dist/types/src/auth/utils/validateCertificates.d.ts +2 -2
- package/dist/types/src/auth/utils/validateCertificates.d.ts.map +1 -1
- package/dist/types/src/auth/utils/verifyNonce.d.ts +1 -1
- package/dist/types/src/auth/utils/verifyNonce.d.ts.map +1 -1
- package/dist/types/src/compat/BSM.d.ts +1 -1
- package/dist/types/src/compat/BSM.d.ts.map +1 -1
- package/dist/types/src/compat/ECIES.d.ts +36 -36
- package/dist/types/src/compat/ECIES.d.ts.map +1 -1
- package/dist/types/src/compat/HD.d.ts +51 -51
- package/dist/types/src/compat/HD.d.ts.map +1 -1
- package/dist/types/src/compat/Mnemonic.d.ts +79 -79
- package/dist/types/src/compat/Mnemonic.d.ts.map +1 -1
- package/dist/types/src/compat/Utxo.d.ts.map +1 -1
- package/dist/types/src/messages/EncryptedMessage.d.ts.map +1 -1
- package/dist/types/src/messages/SignedMessage.d.ts.map +1 -1
- package/dist/types/src/overlay-tools/LookupResolver.d.ts +9 -9
- package/dist/types/src/overlay-tools/LookupResolver.d.ts.map +1 -1
- package/dist/types/src/overlay-tools/OverlayAdminTokenTemplate.d.ts +17 -17
- package/dist/types/src/overlay-tools/OverlayAdminTokenTemplate.d.ts.map +1 -1
- package/dist/types/src/overlay-tools/SHIPBroadcaster.d.ts +14 -14
- package/dist/types/src/overlay-tools/SHIPBroadcaster.d.ts.map +1 -1
- package/dist/types/src/primitives/AESGCM.d.ts.map +1 -1
- package/dist/types/src/primitives/BasePoint.d.ts +8 -8
- package/dist/types/src/primitives/BasePoint.d.ts.map +1 -1
- package/dist/types/src/primitives/BigNumber.d.ts.map +1 -1
- package/dist/types/src/primitives/Curve.d.ts +14 -7
- package/dist/types/src/primitives/Curve.d.ts.map +1 -1
- package/dist/types/src/primitives/DRBG.d.ts.map +1 -1
- package/dist/types/src/primitives/ECDSA.d.ts +1 -1
- package/dist/types/src/primitives/ECDSA.d.ts.map +1 -1
- package/dist/types/src/primitives/Hash.d.ts +11 -11
- package/dist/types/src/primitives/Hash.d.ts.map +1 -1
- package/dist/types/src/primitives/JacobianPoint.d.ts.map +1 -1
- package/dist/types/src/primitives/Point.d.ts +14 -10
- package/dist/types/src/primitives/Point.d.ts.map +1 -1
- package/dist/types/src/primitives/Polynomial.d.ts.map +1 -1
- package/dist/types/src/primitives/PrivateKey.d.ts +2 -2
- package/dist/types/src/primitives/PrivateKey.d.ts.map +1 -1
- package/dist/types/src/primitives/PublicKey.d.ts.map +1 -1
- package/dist/types/src/primitives/Random.d.ts.map +1 -1
- package/dist/types/src/primitives/Schnorr.d.ts +14 -14
- package/dist/types/src/primitives/Schnorr.d.ts.map +1 -1
- package/dist/types/src/primitives/Signature.d.ts +1 -1
- package/dist/types/src/primitives/Signature.d.ts.map +1 -1
- package/dist/types/src/primitives/SymmetricKey.d.ts +13 -13
- package/dist/types/src/primitives/SymmetricKey.d.ts.map +1 -1
- package/dist/types/src/primitives/TransactionSignature.d.ts +4 -4
- package/dist/types/src/primitives/TransactionSignature.d.ts.map +1 -1
- package/dist/types/src/primitives/utils.d.ts +3 -6
- package/dist/types/src/primitives/utils.d.ts.map +1 -1
- package/dist/types/src/script/Script.d.ts +3 -3
- package/dist/types/src/script/Script.d.ts.map +1 -1
- package/dist/types/src/script/ScriptTemplate.d.ts +2 -2
- package/dist/types/src/script/ScriptTemplate.d.ts.map +1 -1
- package/dist/types/src/script/Spend.d.ts.map +1 -1
- package/dist/types/src/script/templates/P2PKH.d.ts.map +1 -1
- package/dist/types/src/script/templates/PushDrop.d.ts +1 -2
- 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/totp/totp.d.ts.map +1 -1
- package/dist/types/src/transaction/Beef.d.ts +96 -96
- package/dist/types/src/transaction/Beef.d.ts.map +1 -1
- package/dist/types/src/transaction/BeefParty.d.ts +22 -22
- package/dist/types/src/transaction/BeefParty.d.ts.map +1 -1
- package/dist/types/src/transaction/BeefTx.d.ts +5 -5
- package/dist/types/src/transaction/BeefTx.d.ts.map +1 -1
- package/dist/types/src/transaction/Broadcaster.d.ts.map +1 -1
- package/dist/types/src/transaction/ChainTracker.d.ts +2 -2
- package/dist/types/src/transaction/FeeModel.d.ts.map +1 -1
- package/dist/types/src/transaction/MerklePath.d.ts.map +1 -1
- package/dist/types/src/transaction/Transaction.d.ts +4 -12
- package/dist/types/src/transaction/Transaction.d.ts.map +1 -1
- package/dist/types/src/transaction/TransactionOutput.d.ts.map +1 -1
- package/dist/types/src/transaction/broadcasters/ARC.d.ts +1 -1
- package/dist/types/src/transaction/broadcasters/ARC.d.ts.map +1 -1
- package/dist/types/src/transaction/broadcasters/DefaultBroadcaster.d.ts.map +1 -1
- package/dist/types/src/transaction/broadcasters/WhatsOnChainBroadcaster.d.ts.map +1 -1
- package/dist/types/src/transaction/chaintrackers/DefaultChainTracker.d.ts.map +1 -1
- package/dist/types/src/transaction/chaintrackers/WhatsOnChain.d.ts.map +1 -1
- package/dist/types/src/transaction/fee-models/SatoshisPerKilobyte.d.ts.map +1 -1
- package/dist/types/src/transaction/http/DefaultHttpClient.d.ts +1 -1
- package/dist/types/src/transaction/http/DefaultHttpClient.d.ts.map +1 -1
- package/dist/types/src/transaction/http/FetchHttpClient.d.ts +5 -5
- package/dist/types/src/transaction/http/FetchHttpClient.d.ts.map +1 -1
- package/dist/types/src/transaction/http/HttpClient.d.ts +4 -4
- package/dist/types/src/transaction/http/HttpClient.d.ts.map +1 -1
- package/dist/types/src/transaction/http/NodejsHttpClient.d.ts +3 -3
- package/dist/types/src/transaction/http/NodejsHttpClient.d.ts.map +1 -1
- package/dist/types/src/transaction/http/index.d.ts.map +1 -1
- package/dist/types/src/transaction/index.d.ts.map +1 -1
- package/dist/types/src/wallet/CachedKeyDeriver.d.ts +58 -58
- package/dist/types/src/wallet/CachedKeyDeriver.d.ts.map +1 -1
- package/dist/types/src/wallet/KeyDeriver.d.ts +78 -78
- package/dist/types/src/wallet/KeyDeriver.d.ts.map +1 -1
- package/dist/types/src/wallet/ProtoWallet.d.ts +10 -10
- package/dist/types/src/wallet/ProtoWallet.d.ts.map +1 -1
- package/dist/types/src/wallet/Wallet.interfaces.d.ts +151 -152
- package/dist/types/src/wallet/Wallet.interfaces.d.ts.map +1 -1
- package/dist/types/src/wallet/WalletClient.d.ts +5 -5
- package/dist/types/src/wallet/WalletClient.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/HTTPWalletJSON.d.ts +6 -6
- package/dist/types/src/wallet/substrates/HTTPWalletJSON.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/HTTPWalletWire.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/WalletWireProcessor.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/WalletWireTransceiver.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/XDM.d.ts +1 -1
- package/dist/types/src/wallet/substrates/XDM.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/window.CWI.d.ts +6 -6
- package/dist/types/src/wallet/substrates/window.CWI.d.ts.map +1 -1
- package/dist/types/tsconfig.types.tsbuildinfo +1 -1
- package/dist/umd/bundle.js +1 -1
- package/docs/auth.md +92 -82
- package/docs/compat.md +24 -24
- package/docs/messages.md +7 -5
- package/docs/overlay-tools.md +21 -21
- package/docs/primitives.md +336 -315
- package/docs/script.md +35 -35
- package/docs/swagger/dist/swagger-initializer.js +7 -7
- package/docs/swagger/dist/swagger-ui-bundle.js +1 -1
- package/docs/swagger/dist/swagger-ui-es-bundle-core.js +2 -2
- package/docs/swagger/dist/swagger-ui-es-bundle.js +1 -1
- package/docs/swagger/dist/swagger-ui-standalone-preset.js +1 -1
- package/docs/swagger/dist/swagger-ui.js +2 -2
- package/docs/totp.md +5 -5
- package/docs/transaction.md +103 -105
- package/docs/wallet-substrates.md +17 -17
- package/docs/wallet.md +202 -204
- package/mod.ts +15 -15
- package/package.json +15 -3
- package/src/auth/Peer.ts +271 -121
- package/src/auth/SessionManager.ts +17 -10
- package/src/auth/__tests/Peer.test.ts +361 -179
- package/src/auth/__tests/SessionManager.test.ts +67 -19
- package/src/auth/__tests/build.test.ts +11 -0
- package/src/auth/certificates/Certificate.ts +27 -14
- package/src/auth/certificates/MasterCertificate.ts +106 -62
- package/src/auth/certificates/VerifiableCertificate.ts +30 -8
- package/src/auth/certificates/__tests/Certificate.test.ts +32 -17
- package/src/auth/certificates/__tests/CompletedProtoWallet.ts +171 -68
- package/src/auth/certificates/__tests/MasterCertificate.test.ts +63 -47
- package/src/auth/certificates/__tests/VerifiableCertificate.test.ts +42 -31
- package/src/auth/certificates/index.ts +1 -1
- package/src/auth/clients/AuthFetch.ts +1 -0
- package/src/auth/clients/index.ts +1 -1
- package/src/auth/transports/SimplifiedFetchTransport.ts +145 -72
- package/src/auth/transports/index.ts +1 -1
- package/src/auth/utils/__tests/cryptononce.test.ts +52 -23
- package/src/auth/utils/__tests/getVerifiableCertificates.test.ts +56 -30
- package/src/auth/utils/__tests/validateCertificates.test.ts +53 -31
- package/src/auth/utils/createNonce.ts +11 -3
- package/src/auth/utils/getVerifiableCertificates.ts +12 -7
- package/src/auth/utils/validateCertificates.ts +57 -39
- package/src/auth/utils/verifyNonce.ts +6 -2
- package/src/compat/BSM.ts +10 -2
- package/src/compat/ECIES.ts +265 -141
- package/src/compat/HD.ts +81 -63
- package/src/compat/Mnemonic.ts +104 -91
- package/src/compat/Utxo.ts +8 -5
- package/src/compat/__tests/BSM.test.ts +42 -16
- package/src/compat/__tests/ECIES.test.ts +117 -52
- package/src/compat/__tests/HD.test.ts +55 -42
- package/src/compat/__tests/Mnemonic.test.ts +11 -12
- package/src/compat/__tests/Mnemonic.vectors.ts +110 -55
- package/src/messages/EncryptedMessage.ts +6 -2
- package/src/messages/SignedMessage.ts +14 -8
- package/src/messages/__tests/EncryptedMessage.test.ts +23 -24
- package/src/messages/__tests/SignedMessage.test.ts +17 -11
- package/src/overlay-tools/LookupResolver.ts +108 -56
- package/src/overlay-tools/OverlayAdminTokenTemplate.ts +52 -23
- package/src/overlay-tools/SHIPBroadcaster.ts +135 -59
- package/src/overlay-tools/__tests/LookupResolver.test.ts +723 -323
- package/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.ts +50 -22
- package/src/overlay-tools/__tests/SHIPBroadcaster.test.ts +607 -290
- package/src/primitives/AESGCM.ts +2 -0
- package/src/primitives/BasePoint.ts +4 -4
- package/src/primitives/BigNumber.ts +99 -90
- package/src/primitives/Curve.ts +117 -46
- package/src/primitives/DRBG.ts +9 -11
- package/src/primitives/ECDSA.ts +109 -63
- package/src/primitives/Hash.ts +492 -321
- package/src/primitives/JacobianPoint.ts +67 -19
- package/src/primitives/Point.ts +254 -152
- package/src/primitives/Polynomial.ts +8 -3
- package/src/primitives/PrivateKey.ts +41 -17
- package/src/primitives/PublicKey.ts +13 -3
- package/src/primitives/Random.ts +14 -8
- package/src/primitives/ReductionContext.ts +1 -1
- package/src/primitives/Schnorr.ts +40 -18
- package/src/primitives/Signature.ts +26 -16
- package/src/primitives/SymmetricKey.ts +14 -14
- package/src/primitives/TransactionSignature.ts +41 -17
- package/src/primitives/__tests/AESGCM.test.ts +457 -151
- package/src/primitives/__tests/BRC42.private.vectors.ts +30 -15
- package/src/primitives/__tests/BRC42.public.vectors.ts +30 -15
- package/src/primitives/__tests/BigNumber.arithmatic.test.ts +344 -125
- package/src/primitives/__tests/BigNumber.binary.test.ts +148 -67
- package/src/primitives/__tests/BigNumber.constructor.test.ts +65 -25
- package/src/primitives/__tests/BigNumber.dhGroup.test.ts +15 -11
- package/src/primitives/__tests/BigNumber.fixtures.ts +16 -8
- package/src/primitives/__tests/BigNumber.serializers.test.ts +41 -15
- package/src/primitives/__tests/BigNumber.utils.test.ts +132 -42
- package/src/primitives/__tests/Curve.unit.test.ts +75 -53
- package/src/primitives/__tests/DRBG.test.ts +1 -1
- package/src/primitives/__tests/DRBG.vectors.ts +45 -75
- package/src/primitives/__tests/ECDH.test.ts +15 -8
- package/src/primitives/__tests/ECDSA.test.ts +12 -6
- package/src/primitives/__tests/HMAC.test.ts +24 -18
- package/src/primitives/__tests/Hash.test.ts +57 -46
- package/src/primitives/__tests/PBKDF2.vectors.ts +130 -117
- package/src/primitives/__tests/PrivateKey.split.test.ts +33 -11
- package/src/primitives/__tests/PrivateKey.test.ts +11 -10
- package/src/primitives/__tests/PublicKey.test.ts +64 -53
- package/src/primitives/__tests/Random.test.ts +1 -1
- package/src/primitives/__tests/Reader.test.ts +240 -219
- package/src/primitives/__tests/ReductionContext.test.ts +98 -61
- package/src/primitives/__tests/Schnorr.test.ts +249 -237
- package/src/primitives/__tests/SymmetricKey.test.ts +18 -15
- package/src/primitives/__tests/SymmetricKey.vectors.ts +16 -8
- package/src/primitives/__tests/Writer.test.ts +23 -13
- package/src/primitives/__tests/bug-31.test.ts +6 -10
- package/src/primitives/__tests/utils.test.ts +70 -19
- package/src/primitives/utils.ts +103 -79
- package/src/script/Script.ts +18 -12
- package/src/script/ScriptTemplate.ts +3 -5
- package/src/script/Spend.ts +306 -108
- package/src/script/__tests/Script.test.ts +73 -55
- package/src/script/__tests/Spend.test.ts +208 -83
- package/src/script/__tests/SpendComplex.test.ts +19 -13
- package/src/script/__tests/script.invalid.vectors.ts +428 -1796
- package/src/script/__tests/script.valid.vectors.ts +728 -2764
- package/src/script/templates/P2PKH.ts +34 -12
- package/src/script/templates/PushDrop.ts +65 -31
- package/src/script/templates/RPuzzle.ts +29 -8
- package/src/script/templates/__tests/PushDrop.test.ts +146 -41
- package/src/totp/__tests/totp.test.ts +45 -44
- package/src/totp/totp.ts +3 -2
- package/src/transaction/Beef.ts +269 -174
- package/src/transaction/BeefParty.ts +41 -31
- package/src/transaction/BeefTx.ts +36 -26
- package/src/transaction/Broadcaster.ts +10 -6
- package/src/transaction/ChainTracker.ts +2 -2
- package/src/transaction/FeeModel.ts +0 -1
- package/src/transaction/MerklePath.ts +124 -59
- package/src/transaction/Transaction.ts +188 -187
- package/src/transaction/TransactionOutput.ts +0 -1
- package/src/transaction/__tests/Beef.test.ts +390 -287
- package/src/transaction/__tests/MerklePath.test.ts +59 -26
- package/src/transaction/__tests/Transaction.benchmarks.test.ts +231 -201
- package/src/transaction/__tests/Transaction.test.ts +758 -482
- package/src/transaction/__tests/bigtx.vectors.ts +2 -1
- package/src/transaction/__tests/bump.invalid.vectors.ts +24 -6
- package/src/transaction/__tests/bump.valid.vectors.ts +6 -2
- package/src/transaction/__tests/tx.invalid.vectors.ts +881 -185
- package/src/transaction/__tests/tx.valid.vectors.ts +1210 -257
- package/src/transaction/broadcasters/ARC.ts +69 -38
- package/src/transaction/broadcasters/DefaultBroadcaster.ts +9 -3
- package/src/transaction/broadcasters/WhatsOnChainBroadcaster.ts +20 -7
- package/src/transaction/broadcasters/__tests/ARC.test.ts +127 -59
- package/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.ts +27 -18
- package/src/transaction/chaintrackers/DefaultChainTracker.ts +1 -1
- package/src/transaction/chaintrackers/WhatsOnChain.ts +27 -11
- package/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.ts +59 -23
- package/src/transaction/fee-models/SatoshisPerKilobyte.ts +9 -5
- package/src/transaction/http/DefaultHttpClient.ts +5 -4
- package/src/transaction/http/FetchHttpClient.ts +18 -9
- package/src/transaction/http/HttpClient.ts +27 -22
- package/src/transaction/http/NodejsHttpClient.ts +23 -9
- package/src/transaction/http/index.ts +5 -1
- package/src/transaction/index.ts +5 -1
- package/src/wallet/CachedKeyDeriver.ts +151 -82
- package/src/wallet/KeyDeriver.ts +186 -105
- package/src/wallet/ProtoWallet.ts +121 -52
- package/src/wallet/Wallet.interfaces.ts +167 -156
- package/src/wallet/WalletClient.ts +314 -59
- package/src/wallet/WalletError.ts +2 -2
- package/src/wallet/__tests/CachedKeyDeriver.test.ts +86 -27
- package/src/wallet/__tests/KeyDeriver.test.ts +136 -33
- package/src/wallet/__tests/ProtoWallet.test.ts +190 -102
- package/src/wallet/substrates/HTTPWalletJSON.ts +250 -67
- package/src/wallet/substrates/HTTPWalletWire.ts +7 -3
- package/src/wallet/substrates/WalletWireCalls.ts +2 -2
- package/src/wallet/substrates/WalletWireProcessor.ts +1412 -1277
- package/src/wallet/substrates/WalletWireTransceiver.ts +713 -138
- package/src/wallet/substrates/XDM.ts +425 -36
- package/src/wallet/substrates/__tests/WalletWire.integration.test.ts +488 -225
- package/src/wallet/substrates/__tests/XDM.test.ts +232 -234
- package/src/wallet/substrates/window.CWI.ts +520 -61
|
@@ -2,98 +2,102 @@
|
|
|
2
2
|
* @jest-environment jsdom
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
|
-
import XDMSubstrate from '
|
|
6
|
-
import { WalletError } from '
|
|
7
|
-
import { Utils } from '
|
|
5
|
+
import XDMSubstrate from '../../../wallet/substrates/XDM'
|
|
6
|
+
import { WalletError } from '../../../wallet/WalletError'
|
|
7
|
+
import { Utils } from '../../../primitives/index'
|
|
8
8
|
|
|
9
9
|
describe('XDMSubstrate', () => {
|
|
10
|
-
let xdmSubstrate
|
|
11
|
-
let originalWindow
|
|
12
|
-
let eventHandlers = {}
|
|
10
|
+
let xdmSubstrate
|
|
11
|
+
let originalWindow
|
|
12
|
+
let eventHandlers: Record<string, (event: any) => void> = {}
|
|
13
13
|
|
|
14
14
|
beforeEach(() => {
|
|
15
15
|
// Save the original window object
|
|
16
|
-
originalWindow = global.window
|
|
16
|
+
originalWindow = global.window
|
|
17
17
|
|
|
18
18
|
// Reset event handlers
|
|
19
|
-
eventHandlers = {}
|
|
19
|
+
eventHandlers = {}
|
|
20
20
|
|
|
21
21
|
// Mock window object
|
|
22
22
|
global.window = {
|
|
23
23
|
postMessage: jest.fn(),
|
|
24
24
|
parent: {
|
|
25
|
-
postMessage: jest.fn()
|
|
25
|
+
postMessage: jest.fn()
|
|
26
26
|
} as unknown as Window,
|
|
27
27
|
addEventListener: jest.fn((event, handler) => {
|
|
28
|
-
eventHandlers[event] = handler
|
|
29
|
-
})
|
|
30
|
-
} as unknown as Window & typeof globalThis
|
|
28
|
+
eventHandlers[event] = handler
|
|
29
|
+
})
|
|
30
|
+
} as unknown as Window & typeof globalThis
|
|
31
31
|
|
|
32
32
|
jest.spyOn(window.parent, 'postMessage')
|
|
33
|
-
})
|
|
33
|
+
})
|
|
34
34
|
|
|
35
35
|
afterEach(() => {
|
|
36
36
|
// Restore the original window object
|
|
37
|
-
global.window = originalWindow
|
|
38
|
-
jest.restoreAllMocks()
|
|
39
|
-
})
|
|
37
|
+
global.window = originalWindow
|
|
38
|
+
jest.restoreAllMocks()
|
|
39
|
+
})
|
|
40
40
|
|
|
41
41
|
describe('constructor', () => {
|
|
42
42
|
it('should throw if window is not an object', () => {
|
|
43
43
|
delete (global as any).window
|
|
44
44
|
expect(() => {
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
45
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
46
|
+
const _ = new XDMSubstrate()
|
|
47
|
+
}).toThrow('The XDM substrate requires a global window object.')
|
|
48
|
+
})
|
|
48
49
|
|
|
49
50
|
it('should throw if window.postMessage is not an object', () => {
|
|
50
51
|
delete (global as any).window.postMessage
|
|
51
52
|
expect(() => {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
53
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
54
|
+
const _ = new XDMSubstrate()
|
|
55
|
+
}).toThrow(
|
|
56
|
+
'The window object does not seem to support postMessage calls.'
|
|
57
|
+
)
|
|
58
|
+
})
|
|
55
59
|
|
|
56
60
|
it('should construct successfully if window and window.postMessage are defined', () => {
|
|
57
61
|
expect(() => {
|
|
58
|
-
xdmSubstrate = new XDMSubstrate()
|
|
59
|
-
}).not.toThrow()
|
|
60
|
-
})
|
|
61
|
-
})
|
|
62
|
+
xdmSubstrate = new XDMSubstrate()
|
|
63
|
+
}).not.toThrow()
|
|
64
|
+
})
|
|
65
|
+
})
|
|
62
66
|
|
|
63
67
|
describe('invoke', () => {
|
|
64
68
|
beforeEach(() => {
|
|
65
|
-
xdmSubstrate = new XDMSubstrate()
|
|
66
|
-
})
|
|
69
|
+
xdmSubstrate = new XDMSubstrate()
|
|
70
|
+
})
|
|
67
71
|
|
|
68
72
|
it('should send a message to window.parent.postMessage with correct parameters', async () => {
|
|
69
|
-
const call = 'testCall'
|
|
70
|
-
const args = { foo: 'bar' }
|
|
71
|
-
const mockId = 'mockedId'
|
|
73
|
+
const call = 'testCall'
|
|
74
|
+
const args = { foo: 'bar' }
|
|
75
|
+
const mockId = 'mockedId'
|
|
72
76
|
|
|
73
|
-
jest.spyOn(Utils, 'toBase64').mockReturnValue(mockId)
|
|
77
|
+
jest.spyOn(Utils, 'toBase64').mockReturnValue(mockId)
|
|
74
78
|
|
|
75
|
-
xdmSubstrate.invoke(call, args)
|
|
79
|
+
xdmSubstrate.invoke(call, args)
|
|
76
80
|
expect(window.parent.postMessage).toHaveBeenCalledWith(
|
|
77
81
|
{
|
|
78
82
|
type: 'CWI',
|
|
79
83
|
isInvocation: true,
|
|
80
84
|
id: mockId,
|
|
81
85
|
call,
|
|
82
|
-
args
|
|
86
|
+
args
|
|
83
87
|
},
|
|
84
88
|
'*'
|
|
85
89
|
)
|
|
86
90
|
})
|
|
87
91
|
|
|
88
92
|
it('should resolve when receiving a valid message', async () => {
|
|
89
|
-
const call = 'testCall'
|
|
90
|
-
const args = { foo: 'bar' }
|
|
91
|
-
const result = { data: 'some data' }
|
|
92
|
-
const mockId = 'mockedId'
|
|
93
|
+
const call = 'testCall'
|
|
94
|
+
const args = { foo: 'bar' }
|
|
95
|
+
const result = { data: 'some data' }
|
|
96
|
+
const mockId = 'mockedId'
|
|
93
97
|
|
|
94
98
|
jest.spyOn(Utils, 'toBase64').mockReturnValue(mockId)
|
|
95
99
|
|
|
96
|
-
const invokePromise = xdmSubstrate.invoke(call, args)
|
|
100
|
+
const invokePromise = xdmSubstrate.invoke(call, args)
|
|
97
101
|
|
|
98
102
|
// Simulate receiving the message
|
|
99
103
|
const event = {
|
|
@@ -102,28 +106,28 @@ describe('XDMSubstrate', () => {
|
|
|
102
106
|
isInvocation: false,
|
|
103
107
|
id: mockId,
|
|
104
108
|
status: 'success',
|
|
105
|
-
result
|
|
109
|
+
result
|
|
106
110
|
},
|
|
107
|
-
isTrusted: true
|
|
108
|
-
}
|
|
111
|
+
isTrusted: true
|
|
112
|
+
}
|
|
109
113
|
|
|
110
|
-
eventHandlers
|
|
114
|
+
eventHandlers.message(event)
|
|
111
115
|
|
|
112
|
-
const res = await invokePromise
|
|
116
|
+
const res = await invokePromise
|
|
113
117
|
|
|
114
|
-
expect(res).toEqual(result)
|
|
115
|
-
})
|
|
118
|
+
expect(res).toEqual(result)
|
|
119
|
+
})
|
|
116
120
|
|
|
117
121
|
it('should reject when receiving an error message', async () => {
|
|
118
|
-
const call = 'testCall'
|
|
119
|
-
const args = { foo: 'bar' }
|
|
120
|
-
const errorDescription = 'An error occurred'
|
|
121
|
-
const errorCode = 123
|
|
122
|
-
const mockId = 'mockedId'
|
|
122
|
+
const call = 'testCall'
|
|
123
|
+
const args = { foo: 'bar' }
|
|
124
|
+
const errorDescription = 'An error occurred'
|
|
125
|
+
const errorCode = 123
|
|
126
|
+
const mockId = 'mockedId'
|
|
123
127
|
|
|
124
|
-
jest.spyOn(Utils, 'toBase64').mockReturnValue(mockId)
|
|
128
|
+
jest.spyOn(Utils, 'toBase64').mockReturnValue(mockId)
|
|
125
129
|
|
|
126
|
-
const invokePromise = xdmSubstrate.invoke(call, args)
|
|
130
|
+
const invokePromise = xdmSubstrate.invoke(call, args)
|
|
127
131
|
|
|
128
132
|
// Simulate receiving the message
|
|
129
133
|
const event = {
|
|
@@ -133,32 +137,31 @@ describe('XDMSubstrate', () => {
|
|
|
133
137
|
id: mockId,
|
|
134
138
|
status: 'error',
|
|
135
139
|
description: errorDescription,
|
|
136
|
-
code: errorCode
|
|
140
|
+
code: errorCode
|
|
137
141
|
},
|
|
138
|
-
isTrusted: true
|
|
139
|
-
}
|
|
142
|
+
isTrusted: true
|
|
143
|
+
}
|
|
140
144
|
|
|
141
|
-
eventHandlers
|
|
145
|
+
eventHandlers.message(event)
|
|
142
146
|
|
|
143
|
-
await expect(invokePromise).rejects.toThrow(WalletError)
|
|
144
|
-
await expect(invokePromise).rejects.toThrow(errorDescription)
|
|
147
|
+
await expect(invokePromise).rejects.toThrow(WalletError)
|
|
148
|
+
await expect(invokePromise).rejects.toThrow(errorDescription)
|
|
145
149
|
try {
|
|
146
|
-
await invokePromise
|
|
150
|
+
await invokePromise
|
|
147
151
|
} catch (err) {
|
|
148
|
-
expect(err.code).toBe(errorCode)
|
|
152
|
+
expect(err.code).toBe(errorCode)
|
|
149
153
|
}
|
|
150
|
-
})
|
|
154
|
+
})
|
|
151
155
|
|
|
152
156
|
it('should ignore messages with incorrect type', async () => {
|
|
153
|
-
const call = 'testCall'
|
|
154
|
-
const args = { foo: 'bar' }
|
|
155
|
-
const result = { data: 'some data' }
|
|
156
|
-
const mockId = 'mockedId'
|
|
157
|
-
|
|
158
|
-
jest.spyOn(Utils, 'toBase64').mockReturnValue(mockId);
|
|
157
|
+
const call = 'testCall'
|
|
158
|
+
const args = { foo: 'bar' }
|
|
159
|
+
const result = { data: 'some data' }
|
|
160
|
+
const mockId = 'mockedId'
|
|
159
161
|
|
|
162
|
+
jest.spyOn(Utils, 'toBase64').mockReturnValue(mockId)
|
|
160
163
|
|
|
161
|
-
const invokePromise = xdmSubstrate.invoke(call, args)
|
|
164
|
+
const invokePromise = xdmSubstrate.invoke(call, args)
|
|
162
165
|
|
|
163
166
|
// Simulate receiving an unrelated message
|
|
164
167
|
const event = {
|
|
@@ -167,34 +170,33 @@ describe('XDMSubstrate', () => {
|
|
|
167
170
|
isInvocation: false,
|
|
168
171
|
id: mockId,
|
|
169
172
|
status: 'success',
|
|
170
|
-
result
|
|
173
|
+
result
|
|
171
174
|
},
|
|
172
|
-
isTrusted: true
|
|
173
|
-
}
|
|
175
|
+
isTrusted: true
|
|
176
|
+
}
|
|
174
177
|
|
|
175
|
-
eventHandlers
|
|
178
|
+
eventHandlers.message(event)
|
|
176
179
|
|
|
177
180
|
// The promise should still be pending
|
|
178
|
-
let isResolved = false
|
|
181
|
+
let isResolved = false
|
|
179
182
|
invokePromise.then(() => {
|
|
180
|
-
isResolved = true
|
|
181
|
-
})
|
|
183
|
+
isResolved = true
|
|
184
|
+
})
|
|
182
185
|
|
|
183
186
|
// Wait a bit to ensure no unintended resolution
|
|
184
|
-
await new Promise((resolve) => setTimeout(resolve, 1))
|
|
185
|
-
expect(isResolved).toBe(false)
|
|
186
|
-
})
|
|
187
|
+
await new Promise((resolve) => setTimeout(resolve, 1))
|
|
188
|
+
expect(isResolved).toBe(false)
|
|
189
|
+
})
|
|
187
190
|
|
|
188
191
|
it('should ignore messages with incorrect id', async () => {
|
|
189
|
-
const call = 'testCall'
|
|
190
|
-
const args = { foo: 'bar' }
|
|
191
|
-
const result = { data: 'some data' }
|
|
192
|
-
const mockId = 'mockedId'
|
|
193
|
-
|
|
194
|
-
jest.spyOn(Utils, 'toBase64').mockReturnValue(mockId);
|
|
192
|
+
const call = 'testCall'
|
|
193
|
+
const args = { foo: 'bar' }
|
|
194
|
+
const result = { data: 'some data' }
|
|
195
|
+
const mockId = 'mockedId'
|
|
195
196
|
|
|
197
|
+
jest.spyOn(Utils, 'toBase64').mockReturnValue(mockId)
|
|
196
198
|
|
|
197
|
-
const invokePromise = xdmSubstrate.invoke(call, args)
|
|
199
|
+
const invokePromise = xdmSubstrate.invoke(call, args)
|
|
198
200
|
|
|
199
201
|
// Simulate receiving a message with wrong id
|
|
200
202
|
const event = {
|
|
@@ -203,34 +205,33 @@ describe('XDMSubstrate', () => {
|
|
|
203
205
|
isInvocation: false,
|
|
204
206
|
id: 'wrongId',
|
|
205
207
|
status: 'success',
|
|
206
|
-
result
|
|
208
|
+
result
|
|
207
209
|
},
|
|
208
|
-
isTrusted: true
|
|
209
|
-
}
|
|
210
|
+
isTrusted: true
|
|
211
|
+
}
|
|
210
212
|
|
|
211
|
-
eventHandlers
|
|
213
|
+
eventHandlers.message(event)
|
|
212
214
|
|
|
213
215
|
// The promise should still be pending
|
|
214
|
-
let isResolved = false
|
|
216
|
+
let isResolved = false
|
|
215
217
|
invokePromise.then(() => {
|
|
216
|
-
isResolved = true
|
|
217
|
-
})
|
|
218
|
+
isResolved = true
|
|
219
|
+
})
|
|
218
220
|
|
|
219
221
|
// Wait a bit to ensure no unintended resolution
|
|
220
|
-
await new Promise((resolve) => setTimeout(resolve, 1))
|
|
221
|
-
expect(isResolved).toBe(false)
|
|
222
|
-
})
|
|
222
|
+
await new Promise((resolve) => setTimeout(resolve, 1))
|
|
223
|
+
expect(isResolved).toBe(false)
|
|
224
|
+
})
|
|
223
225
|
|
|
224
226
|
it('should ignore messages where e.isTrusted is false', async () => {
|
|
225
|
-
const call = 'testCall'
|
|
226
|
-
const args = { foo: 'bar' }
|
|
227
|
-
const result = { data: 'some data' }
|
|
228
|
-
const mockId = 'mockedId'
|
|
229
|
-
|
|
230
|
-
jest.spyOn(Utils, 'toBase64').mockReturnValue(mockId);
|
|
227
|
+
const call = 'testCall'
|
|
228
|
+
const args = { foo: 'bar' }
|
|
229
|
+
const result = { data: 'some data' }
|
|
230
|
+
const mockId = 'mockedId'
|
|
231
231
|
|
|
232
|
+
jest.spyOn(Utils, 'toBase64').mockReturnValue(mockId)
|
|
232
233
|
|
|
233
|
-
const invokePromise = xdmSubstrate.invoke(call, args)
|
|
234
|
+
const invokePromise = xdmSubstrate.invoke(call, args)
|
|
234
235
|
|
|
235
236
|
// Simulate receiving a message with isTrusted false
|
|
236
237
|
const event = {
|
|
@@ -239,34 +240,33 @@ describe('XDMSubstrate', () => {
|
|
|
239
240
|
isInvocation: false,
|
|
240
241
|
id: mockId,
|
|
241
242
|
status: 'success',
|
|
242
|
-
result
|
|
243
|
+
result
|
|
243
244
|
},
|
|
244
|
-
isTrusted: false
|
|
245
|
-
}
|
|
245
|
+
isTrusted: false
|
|
246
|
+
}
|
|
246
247
|
|
|
247
|
-
eventHandlers
|
|
248
|
+
eventHandlers.message(event)
|
|
248
249
|
|
|
249
250
|
// The promise should still be pending
|
|
250
|
-
let isResolved = false
|
|
251
|
+
let isResolved = false
|
|
251
252
|
invokePromise.then(() => {
|
|
252
|
-
isResolved = true
|
|
253
|
-
})
|
|
253
|
+
isResolved = true
|
|
254
|
+
})
|
|
254
255
|
|
|
255
256
|
// Wait a bit to ensure no unintended resolution
|
|
256
|
-
await new Promise((resolve) => setTimeout(resolve, 1))
|
|
257
|
-
expect(isResolved).toBe(false)
|
|
258
|
-
})
|
|
257
|
+
await new Promise((resolve) => setTimeout(resolve, 1))
|
|
258
|
+
expect(isResolved).toBe(false)
|
|
259
|
+
})
|
|
259
260
|
|
|
260
261
|
it('should ignore messages where e.data.isInvocation is true', async () => {
|
|
261
|
-
const call = 'testCall'
|
|
262
|
-
const args = { foo: 'bar' }
|
|
263
|
-
const result = { data: 'some data' }
|
|
264
|
-
const mockId = 'mockedId'
|
|
265
|
-
|
|
266
|
-
jest.spyOn(Utils, 'toBase64').mockReturnValue(mockId);
|
|
262
|
+
const call = 'testCall'
|
|
263
|
+
const args = { foo: 'bar' }
|
|
264
|
+
const result = { data: 'some data' }
|
|
265
|
+
const mockId = 'mockedId'
|
|
267
266
|
|
|
267
|
+
jest.spyOn(Utils, 'toBase64').mockReturnValue(mockId)
|
|
268
268
|
|
|
269
|
-
const invokePromise = xdmSubstrate.invoke(call, args)
|
|
269
|
+
const invokePromise = xdmSubstrate.invoke(call, args)
|
|
270
270
|
|
|
271
271
|
// Simulate receiving a message with isInvocation true
|
|
272
272
|
const event = {
|
|
@@ -275,40 +275,39 @@ describe('XDMSubstrate', () => {
|
|
|
275
275
|
isInvocation: true,
|
|
276
276
|
id: mockId,
|
|
277
277
|
status: 'success',
|
|
278
|
-
result
|
|
278
|
+
result
|
|
279
279
|
},
|
|
280
|
-
isTrusted: true
|
|
281
|
-
}
|
|
280
|
+
isTrusted: true
|
|
281
|
+
}
|
|
282
282
|
|
|
283
|
-
eventHandlers
|
|
283
|
+
eventHandlers.message(event)
|
|
284
284
|
|
|
285
285
|
// The promise should still be pending
|
|
286
|
-
let isResolved = false
|
|
286
|
+
let isResolved = false
|
|
287
287
|
invokePromise.then(() => {
|
|
288
|
-
isResolved = true
|
|
289
|
-
})
|
|
288
|
+
isResolved = true
|
|
289
|
+
})
|
|
290
290
|
|
|
291
291
|
// Wait a bit to ensure no unintended resolution
|
|
292
|
-
await new Promise((resolve) => setTimeout(resolve, 1))
|
|
293
|
-
expect(isResolved).toBe(false)
|
|
294
|
-
})
|
|
295
|
-
})
|
|
292
|
+
await new Promise((resolve) => setTimeout(resolve, 1))
|
|
293
|
+
expect(isResolved).toBe(false)
|
|
294
|
+
})
|
|
295
|
+
})
|
|
296
296
|
|
|
297
297
|
// Helper function to test methods
|
|
298
|
-
const testMethod = (methodName, args, result) => {
|
|
298
|
+
const testMethod = (methodName: string, args: any, result: any): void => {
|
|
299
299
|
describe(methodName, () => {
|
|
300
300
|
beforeEach(() => {
|
|
301
|
-
xdmSubstrate = new XDMSubstrate()
|
|
302
|
-
})
|
|
301
|
+
xdmSubstrate = new XDMSubstrate()
|
|
302
|
+
})
|
|
303
303
|
|
|
304
|
-
it(
|
|
305
|
-
const call = methodName
|
|
306
|
-
const mockId = 'mockedId'
|
|
304
|
+
it('should call invoke with correct arguments and return the result', async () => {
|
|
305
|
+
const call = methodName
|
|
306
|
+
const mockId = 'mockedId'
|
|
307
307
|
|
|
308
|
-
jest.spyOn(Utils, 'toBase64').mockReturnValue(mockId)
|
|
308
|
+
jest.spyOn(Utils, 'toBase64').mockReturnValue(mockId)
|
|
309
309
|
|
|
310
|
-
|
|
311
|
-
const invokePromise = xdmSubstrate[methodName](args);
|
|
310
|
+
const invokePromise = xdmSubstrate[methodName](args)
|
|
312
311
|
|
|
313
312
|
expect(window.parent.postMessage).toHaveBeenCalledWith(
|
|
314
313
|
{
|
|
@@ -316,10 +315,10 @@ describe('XDMSubstrate', () => {
|
|
|
316
315
|
isInvocation: true,
|
|
317
316
|
id: mockId,
|
|
318
317
|
call,
|
|
319
|
-
args
|
|
318
|
+
args
|
|
320
319
|
},
|
|
321
|
-
'*'
|
|
322
|
-
)
|
|
320
|
+
'*'
|
|
321
|
+
)
|
|
323
322
|
|
|
324
323
|
const event = {
|
|
325
324
|
data: {
|
|
@@ -327,27 +326,26 @@ describe('XDMSubstrate', () => {
|
|
|
327
326
|
isInvocation: false,
|
|
328
327
|
id: mockId,
|
|
329
328
|
status: 'success',
|
|
330
|
-
result
|
|
329
|
+
result
|
|
331
330
|
},
|
|
332
|
-
isTrusted: true
|
|
333
|
-
}
|
|
331
|
+
isTrusted: true
|
|
332
|
+
}
|
|
334
333
|
|
|
335
|
-
eventHandlers
|
|
334
|
+
eventHandlers.message(event)
|
|
336
335
|
|
|
337
|
-
const res = await invokePromise
|
|
338
|
-
expect(res).toEqual(result)
|
|
339
|
-
})
|
|
336
|
+
const res = await invokePromise
|
|
337
|
+
expect(res).toEqual(result)
|
|
338
|
+
})
|
|
340
339
|
|
|
341
340
|
it('should throw error when invoke rejects', async () => {
|
|
342
|
-
const call = methodName
|
|
343
|
-
const errorDescription = 'An error occurred'
|
|
344
|
-
const errorCode = 123
|
|
345
|
-
const mockId = 'mockedId'
|
|
346
|
-
|
|
347
|
-
jest.spyOn(Utils, 'toBase64').mockReturnValue(mockId);
|
|
341
|
+
const call = methodName
|
|
342
|
+
const errorDescription = 'An error occurred'
|
|
343
|
+
const errorCode = 123
|
|
344
|
+
const mockId = 'mockedId'
|
|
348
345
|
|
|
346
|
+
jest.spyOn(Utils, 'toBase64').mockReturnValue(mockId)
|
|
349
347
|
|
|
350
|
-
const invokePromise = xdmSubstrate[methodName](args)
|
|
348
|
+
const invokePromise = xdmSubstrate[methodName](args)
|
|
351
349
|
|
|
352
350
|
expect(window.parent.postMessage).toHaveBeenCalledWith(
|
|
353
351
|
{
|
|
@@ -355,10 +353,10 @@ describe('XDMSubstrate', () => {
|
|
|
355
353
|
isInvocation: true,
|
|
356
354
|
id: mockId,
|
|
357
355
|
call,
|
|
358
|
-
args
|
|
356
|
+
args
|
|
359
357
|
},
|
|
360
|
-
'*'
|
|
361
|
-
)
|
|
358
|
+
'*'
|
|
359
|
+
)
|
|
362
360
|
|
|
363
361
|
// Simulate receiving an error message
|
|
364
362
|
const event = {
|
|
@@ -368,21 +366,21 @@ describe('XDMSubstrate', () => {
|
|
|
368
366
|
id: mockId,
|
|
369
367
|
status: 'error',
|
|
370
368
|
description: errorDescription,
|
|
371
|
-
code: errorCode
|
|
369
|
+
code: errorCode
|
|
372
370
|
},
|
|
373
|
-
isTrusted: true
|
|
374
|
-
}
|
|
371
|
+
isTrusted: true
|
|
372
|
+
}
|
|
375
373
|
|
|
376
|
-
eventHandlers
|
|
374
|
+
eventHandlers.message(event)
|
|
377
375
|
|
|
378
|
-
await expect(invokePromise).rejects.toThrow(WalletError)
|
|
379
|
-
await expect(invokePromise).rejects.toThrow(errorDescription)
|
|
376
|
+
await expect(invokePromise).rejects.toThrow(WalletError)
|
|
377
|
+
await expect(invokePromise).rejects.toThrow(errorDescription)
|
|
380
378
|
await invokePromise.catch((err) => {
|
|
381
|
-
expect(err.code).toBe(errorCode)
|
|
382
|
-
})
|
|
383
|
-
})
|
|
384
|
-
})
|
|
385
|
-
}
|
|
379
|
+
expect(err.code).toBe(errorCode)
|
|
380
|
+
})
|
|
381
|
+
})
|
|
382
|
+
})
|
|
383
|
+
}
|
|
386
384
|
|
|
387
385
|
// List of methods to test
|
|
388
386
|
const methodsToTest = [
|
|
@@ -391,68 +389,68 @@ describe('XDMSubstrate', () => {
|
|
|
391
389
|
args: {
|
|
392
390
|
description: 'Test description',
|
|
393
391
|
inputs: [],
|
|
394
|
-
outputs: []
|
|
392
|
+
outputs: []
|
|
395
393
|
},
|
|
396
|
-
result: { txid: 'abc123' }
|
|
394
|
+
result: { txid: 'abc123' }
|
|
397
395
|
},
|
|
398
396
|
{
|
|
399
397
|
methodName: 'signAction',
|
|
400
398
|
args: {
|
|
401
399
|
spends: {},
|
|
402
|
-
reference: 'someReference'
|
|
400
|
+
reference: 'someReference'
|
|
403
401
|
},
|
|
404
|
-
result: { txid: 'abc123' }
|
|
402
|
+
result: { txid: 'abc123' }
|
|
405
403
|
},
|
|
406
404
|
{
|
|
407
405
|
methodName: 'abortAction',
|
|
408
406
|
args: {
|
|
409
|
-
reference: 'someReference'
|
|
407
|
+
reference: 'someReference'
|
|
410
408
|
},
|
|
411
|
-
result: { aborted: true }
|
|
409
|
+
result: { aborted: true }
|
|
412
410
|
},
|
|
413
411
|
{
|
|
414
412
|
methodName: 'listActions',
|
|
415
413
|
args: {
|
|
416
|
-
labels: []
|
|
414
|
+
labels: []
|
|
417
415
|
},
|
|
418
|
-
result: { totalActions: 0, actions: [] }
|
|
416
|
+
result: { totalActions: 0, actions: [] }
|
|
419
417
|
},
|
|
420
418
|
{
|
|
421
419
|
methodName: 'internalizeAction',
|
|
422
420
|
args: {
|
|
423
421
|
tx: 'someTx',
|
|
424
422
|
outputs: [],
|
|
425
|
-
description: 'Test description'
|
|
423
|
+
description: 'Test description'
|
|
426
424
|
},
|
|
427
|
-
result: { accepted: true }
|
|
425
|
+
result: { accepted: true }
|
|
428
426
|
},
|
|
429
427
|
{
|
|
430
428
|
methodName: 'listOutputs',
|
|
431
429
|
args: {
|
|
432
|
-
basket: 'someBasket'
|
|
430
|
+
basket: 'someBasket'
|
|
433
431
|
},
|
|
434
|
-
result: { totalOutputs: 0, outputs: [] }
|
|
432
|
+
result: { totalOutputs: 0, outputs: [] }
|
|
435
433
|
},
|
|
436
434
|
{
|
|
437
435
|
methodName: 'relinquishOutput',
|
|
438
436
|
args: {
|
|
439
437
|
basket: 'someBasket',
|
|
440
|
-
output: 'someOutput'
|
|
438
|
+
output: 'someOutput'
|
|
441
439
|
},
|
|
442
|
-
result: { relinquished: true }
|
|
440
|
+
result: { relinquished: true }
|
|
443
441
|
},
|
|
444
442
|
{
|
|
445
443
|
methodName: 'getPublicKey',
|
|
446
444
|
args: {
|
|
447
|
-
identityKey: true
|
|
445
|
+
identityKey: true
|
|
448
446
|
},
|
|
449
|
-
result: { publicKey: 'somePubKey' }
|
|
447
|
+
result: { publicKey: 'somePubKey' }
|
|
450
448
|
},
|
|
451
449
|
{
|
|
452
450
|
methodName: 'revealCounterpartyKeyLinkage',
|
|
453
451
|
args: {
|
|
454
452
|
counterparty: 'someCounterparty',
|
|
455
|
-
verifier: 'someVerifier'
|
|
453
|
+
verifier: 'someVerifier'
|
|
456
454
|
},
|
|
457
455
|
result: {
|
|
458
456
|
prover: 'someProver',
|
|
@@ -460,8 +458,8 @@ describe('XDMSubstrate', () => {
|
|
|
460
458
|
counterparty: 'someCounterparty',
|
|
461
459
|
revelationTime: 'someTime',
|
|
462
460
|
encryptedLinkage: [],
|
|
463
|
-
encryptedLinkageProof: []
|
|
464
|
-
}
|
|
461
|
+
encryptedLinkageProof: []
|
|
462
|
+
}
|
|
465
463
|
},
|
|
466
464
|
{
|
|
467
465
|
methodName: 'revealSpecificKeyLinkage',
|
|
@@ -469,7 +467,7 @@ describe('XDMSubstrate', () => {
|
|
|
469
467
|
counterparty: 'someCounterparty',
|
|
470
468
|
verifier: 'someVerifier',
|
|
471
469
|
protocolID: [0, 'someProtocol'],
|
|
472
|
-
keyID: 'someKeyID'
|
|
470
|
+
keyID: 'someKeyID'
|
|
473
471
|
},
|
|
474
472
|
result: {
|
|
475
473
|
prover: 'someProver',
|
|
@@ -479,35 +477,35 @@ describe('XDMSubstrate', () => {
|
|
|
479
477
|
keyID: 'someKeyID',
|
|
480
478
|
encryptedLinkage: [],
|
|
481
479
|
encryptedLinkageProof: [],
|
|
482
|
-
proofType: []
|
|
483
|
-
}
|
|
480
|
+
proofType: []
|
|
481
|
+
}
|
|
484
482
|
},
|
|
485
483
|
{
|
|
486
484
|
methodName: 'encrypt',
|
|
487
485
|
args: {
|
|
488
486
|
plaintext: [],
|
|
489
487
|
protocolID: [0, 'someProtocol'],
|
|
490
|
-
keyID: 'someKeyID'
|
|
488
|
+
keyID: 'someKeyID'
|
|
491
489
|
},
|
|
492
|
-
result: { ciphertext: [] }
|
|
490
|
+
result: { ciphertext: [] }
|
|
493
491
|
},
|
|
494
492
|
{
|
|
495
493
|
methodName: 'decrypt',
|
|
496
494
|
args: {
|
|
497
495
|
ciphertext: [],
|
|
498
496
|
protocolID: [0, 'someProtocol'],
|
|
499
|
-
keyID: 'someKeyID'
|
|
497
|
+
keyID: 'someKeyID'
|
|
500
498
|
},
|
|
501
|
-
result: { plaintext: [] }
|
|
499
|
+
result: { plaintext: [] }
|
|
502
500
|
},
|
|
503
501
|
{
|
|
504
502
|
methodName: 'createHmac',
|
|
505
503
|
args: {
|
|
506
504
|
data: [],
|
|
507
505
|
protocolID: [0, 'someProtocol'],
|
|
508
|
-
keyID: 'someKeyID'
|
|
506
|
+
keyID: 'someKeyID'
|
|
509
507
|
},
|
|
510
|
-
result: { hmac: [] }
|
|
508
|
+
result: { hmac: [] }
|
|
511
509
|
},
|
|
512
510
|
{
|
|
513
511
|
methodName: 'verifyHmac',
|
|
@@ -515,18 +513,18 @@ describe('XDMSubstrate', () => {
|
|
|
515
513
|
data: [],
|
|
516
514
|
hmac: [],
|
|
517
515
|
protocolID: [0, 'someProtocol'],
|
|
518
|
-
keyID: 'someKeyID'
|
|
516
|
+
keyID: 'someKeyID'
|
|
519
517
|
},
|
|
520
|
-
result: { valid: true }
|
|
518
|
+
result: { valid: true }
|
|
521
519
|
},
|
|
522
520
|
{
|
|
523
521
|
methodName: 'createSignature',
|
|
524
522
|
args: {
|
|
525
523
|
data: [],
|
|
526
524
|
protocolID: [0, 'someProtocol'],
|
|
527
|
-
keyID: 'someKeyID'
|
|
525
|
+
keyID: 'someKeyID'
|
|
528
526
|
},
|
|
529
|
-
result: { signature: [] }
|
|
527
|
+
result: { signature: [] }
|
|
530
528
|
},
|
|
531
529
|
{
|
|
532
530
|
methodName: 'verifySignature',
|
|
@@ -534,9 +532,9 @@ describe('XDMSubstrate', () => {
|
|
|
534
532
|
data: [],
|
|
535
533
|
signature: [],
|
|
536
534
|
protocolID: [0, 'someProtocol'],
|
|
537
|
-
keyID: 'someKeyID'
|
|
535
|
+
keyID: 'someKeyID'
|
|
538
536
|
},
|
|
539
|
-
result: { valid: true }
|
|
537
|
+
result: { valid: true }
|
|
540
538
|
},
|
|
541
539
|
{
|
|
542
540
|
methodName: 'acquireCertificate',
|
|
@@ -550,7 +548,7 @@ describe('XDMSubstrate', () => {
|
|
|
550
548
|
certifier: 'someCertifier',
|
|
551
549
|
keyringRevealer: 'certifier',
|
|
552
550
|
keyringForSubject: {},
|
|
553
|
-
acquisitionProtocol: 'direct'
|
|
551
|
+
acquisitionProtocol: 'direct'
|
|
554
552
|
},
|
|
555
553
|
result: {
|
|
556
554
|
type: 'someType',
|
|
@@ -559,19 +557,19 @@ describe('XDMSubstrate', () => {
|
|
|
559
557
|
certifier: 'someCertifier',
|
|
560
558
|
revocationOutpoint: 'someOutpoint',
|
|
561
559
|
signature: 'someSignature',
|
|
562
|
-
fields: {}
|
|
563
|
-
}
|
|
560
|
+
fields: {}
|
|
561
|
+
}
|
|
564
562
|
},
|
|
565
563
|
{
|
|
566
564
|
methodName: 'listCertificates',
|
|
567
565
|
args: {
|
|
568
566
|
certifiers: [],
|
|
569
|
-
types: []
|
|
567
|
+
types: []
|
|
570
568
|
},
|
|
571
569
|
result: {
|
|
572
570
|
totalCertificates: 0,
|
|
573
|
-
certificates: []
|
|
574
|
-
}
|
|
571
|
+
certificates: []
|
|
572
|
+
}
|
|
575
573
|
},
|
|
576
574
|
{
|
|
577
575
|
methodName: 'proveCertificate',
|
|
@@ -583,77 +581,77 @@ describe('XDMSubstrate', () => {
|
|
|
583
581
|
certifier: 'someCertifier',
|
|
584
582
|
revocationOutpoint: 'someOutpoint',
|
|
585
583
|
signature: 'someSignature',
|
|
586
|
-
fields: {}
|
|
584
|
+
fields: {}
|
|
587
585
|
},
|
|
588
586
|
fieldsToReveal: [],
|
|
589
|
-
verifier: 'someVerifier'
|
|
587
|
+
verifier: 'someVerifier'
|
|
590
588
|
},
|
|
591
589
|
result: {
|
|
592
|
-
keyringForVerifier: {}
|
|
593
|
-
}
|
|
590
|
+
keyringForVerifier: {}
|
|
591
|
+
}
|
|
594
592
|
},
|
|
595
593
|
{
|
|
596
594
|
methodName: 'relinquishCertificate',
|
|
597
595
|
args: {
|
|
598
596
|
type: 'someType',
|
|
599
597
|
serialNumber: 'someSerialNumber',
|
|
600
|
-
certifier: 'someCertifier'
|
|
598
|
+
certifier: 'someCertifier'
|
|
601
599
|
},
|
|
602
|
-
result: { relinquished: true }
|
|
600
|
+
result: { relinquished: true }
|
|
603
601
|
},
|
|
604
602
|
{
|
|
605
603
|
methodName: 'discoverByIdentityKey',
|
|
606
604
|
args: {
|
|
607
|
-
identityKey: 'someIdentityKey'
|
|
605
|
+
identityKey: 'someIdentityKey'
|
|
608
606
|
},
|
|
609
607
|
result: {
|
|
610
608
|
totalCertificates: 0,
|
|
611
|
-
certificates: []
|
|
612
|
-
}
|
|
609
|
+
certificates: []
|
|
610
|
+
}
|
|
613
611
|
},
|
|
614
612
|
{
|
|
615
613
|
methodName: 'discoverByAttributes',
|
|
616
614
|
args: {
|
|
617
|
-
attributes: {}
|
|
615
|
+
attributes: {}
|
|
618
616
|
},
|
|
619
617
|
result: {
|
|
620
618
|
totalCertificates: 0,
|
|
621
|
-
certificates: []
|
|
622
|
-
}
|
|
619
|
+
certificates: []
|
|
620
|
+
}
|
|
623
621
|
},
|
|
624
622
|
{
|
|
625
623
|
methodName: 'isAuthenticated',
|
|
626
624
|
args: {},
|
|
627
|
-
result: { authenticated: true }
|
|
625
|
+
result: { authenticated: true }
|
|
628
626
|
},
|
|
629
627
|
{
|
|
630
628
|
methodName: 'waitForAuthentication',
|
|
631
629
|
args: {},
|
|
632
|
-
result: { authenticated: true }
|
|
630
|
+
result: { authenticated: true }
|
|
633
631
|
},
|
|
634
632
|
{
|
|
635
633
|
methodName: 'getHeight',
|
|
636
634
|
args: {},
|
|
637
|
-
result: { height: 1000 }
|
|
635
|
+
result: { height: 1000 }
|
|
638
636
|
},
|
|
639
637
|
{
|
|
640
638
|
methodName: 'getHeaderForHeight',
|
|
641
639
|
args: { height: 1000 },
|
|
642
|
-
result: { header: 'someHeader' }
|
|
640
|
+
result: { header: 'someHeader' }
|
|
643
641
|
},
|
|
644
642
|
{
|
|
645
643
|
methodName: 'getNetwork',
|
|
646
644
|
args: {},
|
|
647
|
-
result: { network: 'mainnet' }
|
|
645
|
+
result: { network: 'mainnet' }
|
|
648
646
|
},
|
|
649
647
|
{
|
|
650
648
|
methodName: 'getVersion',
|
|
651
649
|
args: {},
|
|
652
|
-
result: { version: '1.0.0' }
|
|
653
|
-
}
|
|
654
|
-
]
|
|
650
|
+
result: { version: '1.0.0' }
|
|
651
|
+
}
|
|
652
|
+
]
|
|
655
653
|
|
|
656
654
|
methodsToTest.forEach(({ methodName, args, result }) => {
|
|
657
|
-
testMethod(methodName, args, result)
|
|
658
|
-
})
|
|
659
|
-
})
|
|
655
|
+
testMethod(methodName, args, result)
|
|
656
|
+
})
|
|
657
|
+
})
|