@bsv/wallet-toolbox 1.7.15 → 1.7.17
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/.github/workflows/push.yaml +91 -14
- package/package.json +1 -1
- package/mobile/node_modules/.package-lock.json +0 -14
- package/mobile/node_modules/@bsv/sdk/LICENSE.txt +0 -28
- package/mobile/node_modules/@bsv/sdk/README.md +0 -133
- package/mobile/node_modules/@bsv/sdk/dist/cjs/mod.js +0 -36
- package/mobile/node_modules/@bsv/sdk/dist/cjs/mod.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/package.json +0 -70
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/Peer.js +0 -695
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/Peer.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/SessionManager.js +0 -130
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/SessionManager.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/certificates/Certificate.js +0 -236
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/certificates/Certificate.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/certificates/MasterCertificate.js +0 -245
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/certificates/MasterCertificate.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/certificates/VerifiableCertificate.js +0 -96
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/certificates/VerifiableCertificate.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/certificates/__tests/CompletedProtoWallet.js +0 -111
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/certificates/__tests/CompletedProtoWallet.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/certificates/index.js +0 -26
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/certificates/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/clients/AuthFetch.js +0 -734
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/clients/AuthFetch.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/clients/__tests__/AuthFetch.test.js +0 -189
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/clients/__tests__/AuthFetch.test.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/clients/index.js +0 -18
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/clients/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/index.js +0 -24
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/transports/SimplifiedFetchTransport.js +0 -424
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/transports/SimplifiedFetchTransport.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/transports/__tests__/SimplifiedFetchTransport.test.js +0 -144
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/transports/__tests__/SimplifiedFetchTransport.test.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/transports/index.js +0 -18
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/transports/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/types.js +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/types.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/utils/createNonce.js +0 -62
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/utils/createNonce.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/utils/getVerifiableCertificates.js +0 -31
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/utils/getVerifiableCertificates.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/utils/index.js +0 -21
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/utils/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/utils/validateCertificates.js +0 -45
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/utils/validateCertificates.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/utils/verifyNonce.js +0 -61
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/auth/utils/verifyNonce.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/compat/BSM.js +0 -94
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/compat/BSM.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/compat/ECIES.js +0 -590
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/compat/ECIES.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/compat/HD.js +0 -354
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/compat/HD.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/compat/Mnemonic.js +0 -314
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/compat/Mnemonic.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/compat/Utxo.js +0 -51
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/compat/Utxo.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/compat/bip-39-wordlist-en.js +0 -2057
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/compat/bip-39-wordlist-en.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/compat/index.js +0 -49
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/compat/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/identity/ContactsManager.js +0 -338
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/identity/ContactsManager.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/identity/IdentityClient.js +0 -367
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/identity/IdentityClient.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/identity/index.js +0 -19
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/identity/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/identity/types/index.js +0 -30
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/identity/types/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/kvstore/GlobalKVStore.js +0 -470
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/kvstore/GlobalKVStore.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/kvstore/LocalKVStore.js +0 -343
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/kvstore/LocalKVStore.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/kvstore/index.js +0 -11
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/kvstore/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/kvstore/kvStoreInterpreter.js +0 -88
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/kvstore/kvStoreInterpreter.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/kvstore/types.js +0 -12
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/kvstore/types.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/messages/EncryptedMessage.js +0 -71
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/messages/EncryptedMessage.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/messages/SignedMessage.js +0 -86
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/messages/SignedMessage.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/messages/index.js +0 -39
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/messages/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/overlay-tools/Historian.js +0 -153
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/overlay-tools/Historian.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/overlay-tools/HostReputationTracker.js +0 -216
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/overlay-tools/HostReputationTracker.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/overlay-tools/LookupResolver.js +0 -398
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/overlay-tools/LookupResolver.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/overlay-tools/OverlayAdminTokenTemplate.js +0 -81
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/overlay-tools/OverlayAdminTokenTemplate.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/overlay-tools/SHIPBroadcaster.js +0 -408
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/overlay-tools/SHIPBroadcaster.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/overlay-tools/index.js +0 -36
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/overlay-tools/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/overlay-tools/withDoubleSpendRetry.js +0 -54
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/overlay-tools/withDoubleSpendRetry.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/AESGCM.js +0 -376
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/AESGCM.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/BasePoint.js +0 -19
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/BasePoint.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/BigNumber.js +0 -1367
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/BigNumber.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/Curve.js +0 -1149
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/Curve.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/DRBG.js +0 -109
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/DRBG.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/ECDSA.js +0 -188
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/ECDSA.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/Hash.js +0 -1687
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/Hash.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/JacobianPoint.js +0 -427
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/JacobianPoint.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/K256.js +0 -127
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/K256.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/Mersenne.js +0 -113
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/Mersenne.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/MontgomoryMethod.js +0 -150
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/MontgomoryMethod.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/Point.js +0 -1098
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/Point.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/Polynomial.js +0 -83
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/Polynomial.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/PrivateKey.js +0 -519
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/PrivateKey.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/PublicKey.js +0 -261
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/PublicKey.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/Random.js +0 -91
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/Random.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/ReductionContext.js +0 -490
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/ReductionContext.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/Schnorr.js +0 -98
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/Schnorr.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/Secp256r1.js +0 -327
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/Secp256r1.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/Signature.js +0 -358
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/Signature.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/SymmetricKey.js +0 -96
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/SymmetricKey.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/TransactionSignature.js +0 -235
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/TransactionSignature.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/hex.js +0 -33
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/hex.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/index.js +0 -69
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/utils.js +0 -863
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/primitives/utils.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/registry/RegistryClient.js +0 -533
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/registry/RegistryClient.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/registry/index.js +0 -19
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/registry/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/registry/types/index.js +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/registry/types/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/LockingScript.js +0 -35
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/LockingScript.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/OP.js +0 -207
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/OP.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/Script.js +0 -567
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/Script.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/ScriptChunk.js +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/ScriptChunk.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/ScriptEvaluationError.js +0 -27
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/ScriptEvaluationError.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/ScriptTemplate.js +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/ScriptTemplate.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/ScriptTemplateUnlock.js +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/ScriptTemplateUnlock.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/Spend.js +0 -1208
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/Spend.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/UnlockingScript.js +0 -35
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/UnlockingScript.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/index.js +0 -34
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/templates/P2PKH.js +0 -129
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/templates/P2PKH.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/templates/PushDrop.js +0 -219
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/templates/PushDrop.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/templates/RPuzzle.js +0 -130
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/templates/RPuzzle.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/templates/index.js +0 -13
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/script/templates/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/storage/StorageDownloader.js +0 -100
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/storage/StorageDownloader.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/storage/StorageUploader.js +0 -213
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/storage/StorageUploader.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/storage/StorageUtils.js +0 -81
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/storage/StorageUtils.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/storage/index.js +0 -42
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/storage/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/totp/index.js +0 -18
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/totp/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/totp/totp.js +0 -92
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/totp/totp.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/Beef.js +0 -840
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/Beef.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/BeefParty.js +0 -117
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/BeefParty.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/BeefTx.js +0 -191
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/BeefTx.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/Broadcaster.js +0 -17
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/Broadcaster.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/ChainTracker.js +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/ChainTracker.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/FeeModel.js +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/FeeModel.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/MerklePath.js +0 -383
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/MerklePath.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/Transaction.js +0 -911
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/Transaction.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/TransactionInput.js +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/TransactionInput.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/TransactionOutput.js +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/TransactionOutput.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/broadcasters/ARC.js +0 -181
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/broadcasters/ARC.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/broadcasters/DefaultBroadcaster.js +0 -11
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/broadcasters/DefaultBroadcaster.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/broadcasters/Teranode.js +0 -63
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/broadcasters/Teranode.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/broadcasters/WhatsOnChainBroadcaster.js +0 -65
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/broadcasters/WhatsOnChainBroadcaster.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/broadcasters/index.js +0 -15
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/broadcasters/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/chaintrackers/BlockHeadersService.js +0 -91
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/chaintrackers/BlockHeadersService.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/chaintrackers/DefaultChainTracker.js +0 -11
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/chaintrackers/DefaultChainTracker.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/chaintrackers/WhatsOnChain.js +0 -67
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/chaintrackers/WhatsOnChain.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/chaintrackers/index.js +0 -13
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/chaintrackers/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/fee-models/LivePolicy.js +0 -90
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/fee-models/LivePolicy.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/fee-models/SatoshisPerKilobyte.js +0 -69
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/fee-models/SatoshisPerKilobyte.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/fee-models/index.js +0 -11
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/fee-models/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/http/BinaryFetchClient.js +0 -94
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/http/BinaryFetchClient.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/http/DefaultHttpClient.js +0 -37
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/http/DefaultHttpClient.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/http/FetchHttpClient.js +0 -31
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/http/FetchHttpClient.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/http/HttpClient.js +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/http/HttpClient.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/http/NodejsHttpClient.js +0 -43
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/http/NodejsHttpClient.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/http/index.js +0 -12
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/http/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/index.js +0 -33
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/transaction/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/CachedKeyDeriver.js +0 -210
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/CachedKeyDeriver.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/KeyDeriver.js +0 -191
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/KeyDeriver.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/ProtoWallet.js +0 -188
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/ProtoWallet.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/WERR_INSUFFICIENT_FUNDS.js +0 -26
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/WERR_INSUFFICIENT_FUNDS.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/WERR_INVALID_PARAMETER.js +0 -20
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/WERR_INVALID_PARAMETER.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/WERR_REVIEW_ACTIONS.js +0 -29
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/WERR_REVIEW_ACTIONS.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/Wallet.interfaces.js +0 -17
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/Wallet.interfaces.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/WalletClient.js +0 -222
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/WalletClient.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/WalletError.js +0 -84
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/WalletError.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/WalletLoggerInterface.js +0 -8
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/WalletLoggerInterface.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/index.js +0 -64
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/substrates/HTTPWalletJSON.js +0 -153
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/substrates/HTTPWalletJSON.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/substrates/HTTPWalletWire.js +0 -78
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/substrates/HTTPWalletWire.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/substrates/ReactNativeWebView.js +0 -175
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/substrates/ReactNativeWebView.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/substrates/WalletWire.js +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/substrates/WalletWire.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/substrates/WalletWireCalls.js +0 -36
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/substrates/WalletWireCalls.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/substrates/WalletWireProcessor.js +0 -1854
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/substrates/WalletWireProcessor.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/substrates/WalletWireTransceiver.js +0 -1411
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/substrates/WalletWireTransceiver.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/substrates/XDM.js +0 -172
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/substrates/XDM.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/substrates/index.js +0 -37
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/substrates/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/substrates/utils/toOriginHeader.js +0 -20
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/substrates/utils/toOriginHeader.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/substrates/window.CWI.js +0 -102
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/substrates/window.CWI.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/validationHelpers.js +0 -931
- package/mobile/node_modules/@bsv/sdk/dist/cjs/src/wallet/validationHelpers.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/cjs/tsconfig.cjs.tsbuildinfo +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/mod.js +0 -20
- package/mobile/node_modules/@bsv/sdk/dist/esm/mod.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/Peer.js +0 -663
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/Peer.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/SessionManager.js +0 -134
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/SessionManager.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/certificates/Certificate.js +0 -225
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/certificates/Certificate.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/certificates/MasterCertificate.js +0 -206
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/certificates/MasterCertificate.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/certificates/VerifiableCertificate.js +0 -58
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/certificates/VerifiableCertificate.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/certificates/__tests/CompletedProtoWallet.js +0 -105
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/certificates/__tests/CompletedProtoWallet.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/certificates/index.js +0 -5
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/certificates/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/clients/AuthFetch.js +0 -698
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/clients/AuthFetch.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/clients/__tests__/AuthFetch.test.js +0 -187
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/clients/__tests__/AuthFetch.test.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/clients/index.js +0 -2
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/clients/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/index.js +0 -8
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/transports/SimplifiedFetchTransport.js +0 -390
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/transports/SimplifiedFetchTransport.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/transports/__tests__/SimplifiedFetchTransport.test.js +0 -109
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/transports/__tests__/SimplifiedFetchTransport.test.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/transports/index.js +0 -2
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/transports/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/types.js +0 -2
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/types.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/utils/createNonce.js +0 -23
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/utils/createNonce.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/utils/getVerifiableCertificates.js +0 -27
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/utils/getVerifiableCertificates.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/utils/index.js +0 -5
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/utils/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/utils/validateCertificates.js +0 -41
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/utils/validateCertificates.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/utils/verifyNonce.js +0 -25
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/auth/utils/verifyNonce.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/compat/BSM.js +0 -52
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/compat/BSM.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/compat/ECIES.js +0 -551
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/compat/ECIES.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/compat/HD.js +0 -322
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/compat/HD.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/compat/Mnemonic.js +0 -278
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/compat/Mnemonic.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/compat/Utxo.js +0 -45
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/compat/Utxo.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/compat/bip-39-wordlist-en.js +0 -2054
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/compat/bip-39-wordlist-en.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/compat/index.js +0 -6
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/compat/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/identity/ContactsManager.js +0 -334
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/identity/ContactsManager.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/identity/IdentityClient.js +0 -364
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/identity/IdentityClient.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/identity/index.js +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/identity/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/identity/types/index.js +0 -27
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/identity/types/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/kvstore/GlobalKVStore.js +0 -456
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/kvstore/GlobalKVStore.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/kvstore/LocalKVStore.js +0 -328
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/kvstore/LocalKVStore.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/kvstore/index.js +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/kvstore/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/kvstore/kvStoreInterpreter.js +0 -51
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/kvstore/kvStoreInterpreter.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/kvstore/types.js +0 -9
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/kvstore/types.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/messages/EncryptedMessage.js +0 -63
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/messages/EncryptedMessage.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/messages/SignedMessage.js +0 -78
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/messages/SignedMessage.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/messages/index.js +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/messages/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/overlay-tools/Historian.js +0 -155
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/overlay-tools/Historian.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/overlay-tools/HostReputationTracker.js +0 -213
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/overlay-tools/HostReputationTracker.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/overlay-tools/LookupResolver.js +0 -372
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/overlay-tools/LookupResolver.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/overlay-tools/OverlayAdminTokenTemplate.js +0 -76
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/overlay-tools/OverlayAdminTokenTemplate.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/overlay-tools/SHIPBroadcaster.js +0 -376
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/overlay-tools/SHIPBroadcaster.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/overlay-tools/index.js +0 -11
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/overlay-tools/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/overlay-tools/withDoubleSpendRetry.js +0 -48
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/overlay-tools/withDoubleSpendRetry.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/AESGCM.js +0 -363
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/AESGCM.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/BasePoint.js +0 -16
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/BasePoint.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/BigNumber.js +0 -1373
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/BigNumber.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/Curve.js +0 -1164
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/Curve.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/DRBG.js +0 -108
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/DRBG.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/ECDSA.js +0 -180
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/ECDSA.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/Hash.js +0 -1693
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/Hash.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/JacobianPoint.js +0 -425
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/JacobianPoint.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/K256.js +0 -121
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/K256.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/Mersenne.js +0 -112
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/Mersenne.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/MontgomoryMethod.js +0 -149
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/MontgomoryMethod.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/Point.js +0 -1078
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/Point.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/Polynomial.js +0 -79
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/Polynomial.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/PrivateKey.js +0 -481
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/PrivateKey.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/PublicKey.js +0 -255
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/PublicKey.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/Random.js +0 -90
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/Random.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/ReductionContext.js +0 -486
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/ReductionContext.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/Schnorr.js +0 -93
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/Schnorr.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/Secp256r1.js +0 -319
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/Secp256r1.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/Signature.js +0 -361
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/Signature.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/SymmetricKey.js +0 -90
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/SymmetricKey.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/TransactionSignature.js +0 -197
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/TransactionSignature.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/hex.js +0 -29
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/hex.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/index.js +0 -16
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/utils.js +0 -847
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/primitives/utils.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/registry/RegistryClient.js +0 -534
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/registry/RegistryClient.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/registry/index.js +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/registry/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/registry/types/index.js +0 -2
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/registry/types/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/LockingScript.js +0 -29
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/LockingScript.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/OP.js +0 -205
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/OP.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/Script.js +0 -565
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/Script.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/ScriptChunk.js +0 -2
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/ScriptChunk.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/ScriptEvaluationError.js +0 -33
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/ScriptEvaluationError.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/ScriptTemplate.js +0 -2
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/ScriptTemplate.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/ScriptTemplateUnlock.js +0 -2
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/ScriptTemplateUnlock.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/Spend.js +0 -1190
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/Spend.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/UnlockingScript.js +0 -29
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/UnlockingScript.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/index.js +0 -8
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/templates/P2PKH.js +0 -125
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/templates/P2PKH.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/templates/PushDrop.js +0 -220
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/templates/PushDrop.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/templates/RPuzzle.js +0 -124
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/templates/RPuzzle.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/templates/index.js +0 -4
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/script/templates/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/storage/StorageDownloader.js +0 -94
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/storage/StorageDownloader.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/storage/StorageUploader.js +0 -178
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/storage/StorageUploader.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/storage/StorageUtils.js +0 -73
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/storage/StorageUtils.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/storage/index.js +0 -4
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/storage/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/totp/index.js +0 -2
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/totp/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/totp/totp.js +0 -85
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/totp/totp.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/Beef.js +0 -835
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/Beef.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/BeefParty.js +0 -113
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/BeefParty.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/BeefTx.js +0 -189
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/BeefTx.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/Broadcaster.js +0 -13
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/Broadcaster.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/ChainTracker.js +0 -2
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/ChainTracker.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/FeeModel.js +0 -2
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/FeeModel.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/MerklePath.js +0 -382
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/MerklePath.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/Transaction.js +0 -914
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/Transaction.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/TransactionInput.js +0 -2
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/TransactionInput.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/TransactionOutput.js +0 -2
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/TransactionOutput.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/broadcasters/ARC.js +0 -182
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/broadcasters/ARC.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/broadcasters/DefaultBroadcaster.js +0 -5
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/broadcasters/DefaultBroadcaster.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/broadcasters/Teranode.js +0 -62
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/broadcasters/Teranode.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/broadcasters/WhatsOnChainBroadcaster.js +0 -65
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/broadcasters/WhatsOnChainBroadcaster.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/broadcasters/index.js +0 -5
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/broadcasters/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/chaintrackers/BlockHeadersService.js +0 -90
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/chaintrackers/BlockHeadersService.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/chaintrackers/DefaultChainTracker.js +0 -5
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/chaintrackers/DefaultChainTracker.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/chaintrackers/WhatsOnChain.js +0 -68
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/chaintrackers/WhatsOnChain.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/chaintrackers/index.js +0 -4
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/chaintrackers/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/fee-models/LivePolicy.js +0 -85
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/fee-models/LivePolicy.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/fee-models/SatoshisPerKilobyte.js +0 -71
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/fee-models/SatoshisPerKilobyte.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/fee-models/index.js +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/fee-models/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/http/BinaryFetchClient.js +0 -90
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/http/BinaryFetchClient.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/http/DefaultHttpClient.js +0 -34
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/http/DefaultHttpClient.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/http/FetchHttpClient.js +0 -28
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/http/FetchHttpClient.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/http/HttpClient.js +0 -2
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/http/HttpClient.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/http/NodejsHttpClient.js +0 -40
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/http/NodejsHttpClient.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/http/index.js +0 -5
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/http/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/index.js +0 -7
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/transaction/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/CachedKeyDeriver.js +0 -218
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/CachedKeyDeriver.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/KeyDeriver.js +0 -192
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/KeyDeriver.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/ProtoWallet.js +0 -182
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/ProtoWallet.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/WERR_INSUFFICIENT_FUNDS.js +0 -25
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/WERR_INSUFFICIENT_FUNDS.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/WERR_INVALID_PARAMETER.js +0 -18
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/WERR_INVALID_PARAMETER.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/WERR_REVIEW_ACTIONS.js +0 -31
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/WERR_REVIEW_ACTIONS.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/Wallet.interfaces.js +0 -14
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/Wallet.interfaces.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/WalletClient.js +0 -218
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/WalletClient.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/WalletError.js +0 -81
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/WalletError.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/WalletLoggerInterface.js +0 -7
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/WalletLoggerInterface.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/index.js +0 -15
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/substrates/HTTPWalletJSON.js +0 -151
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/substrates/HTTPWalletJSON.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/substrates/HTTPWalletWire.js +0 -42
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/substrates/HTTPWalletWire.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/substrates/ReactNativeWebView.js +0 -137
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/substrates/ReactNativeWebView.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/substrates/WalletWire.js +0 -2
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/substrates/WalletWire.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/substrates/WalletWireCalls.js +0 -34
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/substrates/WalletWireCalls.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/substrates/WalletWireProcessor.js +0 -1816
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/substrates/WalletWireProcessor.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/substrates/WalletWireTransceiver.js +0 -1373
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/substrates/WalletWireTransceiver.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/substrates/XDM.js +0 -134
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/substrates/XDM.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/substrates/index.js +0 -10
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/substrates/index.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/substrates/utils/toOriginHeader.js +0 -17
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/substrates/utils/toOriginHeader.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/substrates/window.CWI.js +0 -100
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/substrates/window.CWI.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/validationHelpers.js +0 -860
- package/mobile/node_modules/@bsv/sdk/dist/esm/src/wallet/validationHelpers.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/esm/tsconfig.esm.tsbuildinfo +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/mod.d.ts +0 -20
- package/mobile/node_modules/@bsv/sdk/dist/types/mod.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/Peer.d.ts +0 -200
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/Peer.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/SessionManager.d.ts +0 -60
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/SessionManager.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/certificates/Certificate.d.ts +0 -112
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/certificates/Certificate.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/certificates/MasterCertificate.d.ts +0 -108
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/certificates/MasterCertificate.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/certificates/VerifiableCertificate.d.ts +0 -37
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/certificates/VerifiableCertificate.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/certificates/__tests/CompletedProtoWallet.d.ts +0 -29
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/certificates/__tests/CompletedProtoWallet.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/certificates/index.d.ts +0 -5
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/certificates/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/clients/AuthFetch.d.ts +0 -126
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/clients/AuthFetch.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/clients/__tests__/AuthFetch.test.d.ts +0 -2
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/clients/__tests__/AuthFetch.test.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/clients/index.d.ts +0 -2
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/clients/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/index.d.ts +0 -8
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/transports/SimplifiedFetchTransport.d.ts +0 -57
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/transports/SimplifiedFetchTransport.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/transports/__tests__/SimplifiedFetchTransport.test.d.ts +0 -2
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/transports/__tests__/SimplifiedFetchTransport.test.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/transports/index.d.ts +0 -2
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/transports/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/types.d.ts +0 -32
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/types.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/utils/createNonce.d.ts +0 -9
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/utils/createNonce.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/utils/getVerifiableCertificates.d.ts +0 -13
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/utils/getVerifiableCertificates.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/utils/index.d.ts +0 -5
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/utils/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/utils/validateCertificates.d.ts +0 -12
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/utils/validateCertificates.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/utils/verifyNonce.d.ts +0 -10
- package/mobile/node_modules/@bsv/sdk/dist/types/src/auth/utils/verifyNonce.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/compat/BSM.d.ts +0 -29
- package/mobile/node_modules/@bsv/sdk/dist/types/src/compat/BSM.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/compat/ECIES.d.ts +0 -62
- package/mobile/node_modules/@bsv/sdk/dist/types/src/compat/ECIES.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/compat/HD.d.ts +0 -131
- package/mobile/node_modules/@bsv/sdk/dist/types/src/compat/HD.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/compat/Mnemonic.d.ts +0 -132
- package/mobile/node_modules/@bsv/sdk/dist/types/src/compat/Mnemonic.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/compat/Utxo.d.ts +0 -42
- package/mobile/node_modules/@bsv/sdk/dist/types/src/compat/Utxo.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/compat/bip-39-wordlist-en.d.ts +0 -5
- package/mobile/node_modules/@bsv/sdk/dist/types/src/compat/bip-39-wordlist-en.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/compat/index.d.ts +0 -6
- package/mobile/node_modules/@bsv/sdk/dist/types/src/compat/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/identity/ContactsManager.d.ts +0 -32
- package/mobile/node_modules/@bsv/sdk/dist/types/src/identity/ContactsManager.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/identity/IdentityClient.d.ts +0 -81
- package/mobile/node_modules/@bsv/sdk/dist/types/src/identity/IdentityClient.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/identity/index.d.ts +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/types/src/identity/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/identity/types/index.d.ts +0 -30
- package/mobile/node_modules/@bsv/sdk/dist/types/src/identity/types/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/kvstore/GlobalKVStore.d.ts +0 -129
- package/mobile/node_modules/@bsv/sdk/dist/types/src/kvstore/GlobalKVStore.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/kvstore/LocalKVStore.d.ts +0 -95
- package/mobile/node_modules/@bsv/sdk/dist/types/src/kvstore/LocalKVStore.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/kvstore/index.d.ts +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/types/src/kvstore/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/kvstore/kvStoreInterpreter.d.ts +0 -23
- package/mobile/node_modules/@bsv/sdk/dist/types/src/kvstore/kvStoreInterpreter.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/kvstore/types.d.ts +0 -118
- package/mobile/node_modules/@bsv/sdk/dist/types/src/kvstore/types.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/messages/EncryptedMessage.d.ts +0 -20
- package/mobile/node_modules/@bsv/sdk/dist/types/src/messages/EncryptedMessage.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/messages/SignedMessage.d.ts +0 -21
- package/mobile/node_modules/@bsv/sdk/dist/types/src/messages/SignedMessage.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/messages/index.d.ts +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/types/src/messages/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/overlay-tools/Historian.d.ts +0 -92
- package/mobile/node_modules/@bsv/sdk/dist/types/src/overlay-tools/Historian.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/overlay-tools/HostReputationTracker.d.ts +0 -37
- package/mobile/node_modules/@bsv/sdk/dist/types/src/overlay-tools/HostReputationTracker.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/overlay-tools/LookupResolver.d.ts +0 -124
- package/mobile/node_modules/@bsv/sdk/dist/types/src/overlay-tools/LookupResolver.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/overlay-tools/OverlayAdminTokenTemplate.d.ts +0 -44
- package/mobile/node_modules/@bsv/sdk/dist/types/src/overlay-tools/OverlayAdminTokenTemplate.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/overlay-tools/SHIPBroadcaster.d.ts +0 -105
- package/mobile/node_modules/@bsv/sdk/dist/types/src/overlay-tools/SHIPBroadcaster.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/overlay-tools/index.d.ts +0 -9
- package/mobile/node_modules/@bsv/sdk/dist/types/src/overlay-tools/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/overlay-tools/withDoubleSpendRetry.d.ts +0 -14
- package/mobile/node_modules/@bsv/sdk/dist/types/src/overlay-tools/withDoubleSpendRetry.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/AESGCM.d.ts +0 -14
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/AESGCM.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/BasePoint.d.ts +0 -22
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/BasePoint.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/BigNumber.d.ts +0 -438
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/BigNumber.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/Curve.d.ts +0 -62
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/Curve.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/DRBG.d.ts +0 -66
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/DRBG.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/ECDSA.d.ts +0 -39
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/ECDSA.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/Hash.d.ts +0 -499
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/Hash.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/JacobianPoint.d.ts +0 -164
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/JacobianPoint.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/K256.d.ts +0 -53
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/K256.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/Mersenne.d.ts +0 -72
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/Mersenne.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/MontgomoryMethod.d.ts +0 -96
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/MontgomoryMethod.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/Point.d.ts +0 -362
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/Point.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/Polynomial.d.ts +0 -32
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/Polynomial.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/PrivateKey.d.ts +0 -284
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/PrivateKey.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/PublicKey.d.ts +0 -155
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/PublicKey.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/Random.d.ts +0 -14
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/Random.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/ReductionContext.d.ts +0 -308
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/ReductionContext.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/Schnorr.d.ts +0 -65
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/Schnorr.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/Secp256r1.d.ts +0 -91
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/Secp256r1.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/Signature.d.ts +0 -162
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/Signature.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/SymmetricKey.d.ts +0 -55
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/SymmetricKey.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/TransactionSignature.d.ts +0 -57
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/TransactionSignature.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/hex.d.ts +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/hex.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/index.d.ts +0 -16
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/utils.d.ts +0 -140
- package/mobile/node_modules/@bsv/sdk/dist/types/src/primitives/utils.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/registry/RegistryClient.d.ts +0 -121
- package/mobile/node_modules/@bsv/sdk/dist/types/src/registry/RegistryClient.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/registry/index.d.ts +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/types/src/registry/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/registry/types/index.d.ts +0 -113
- package/mobile/node_modules/@bsv/sdk/dist/types/src/registry/types/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/LockingScript.d.ts +0 -25
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/LockingScript.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/OP.d.ts +0 -193
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/OP.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/Script.d.ts +0 -157
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/Script.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/ScriptChunk.d.ts +0 -8
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/ScriptChunk.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/ScriptEvaluationError.d.ts +0 -24
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/ScriptEvaluationError.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/ScriptTemplate.d.ts +0 -29
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/ScriptTemplate.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/ScriptTemplateUnlock.d.ts +0 -7
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/ScriptTemplateUnlock.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/Spend.d.ts +0 -120
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/Spend.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/UnlockingScript.d.ts +0 -25
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/UnlockingScript.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/index.d.ts +0 -11
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/templates/P2PKH.d.ts +0 -40
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/templates/P2PKH.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/templates/PushDrop.d.ts +0 -56
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/templates/PushDrop.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/templates/RPuzzle.d.ts +0 -47
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/templates/RPuzzle.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/templates/index.d.ts +0 -4
- package/mobile/node_modules/@bsv/sdk/dist/types/src/script/templates/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/storage/StorageDownloader.d.ts +0 -25
- package/mobile/node_modules/@bsv/sdk/dist/types/src/storage/StorageDownloader.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/storage/StorageUploader.d.ts +0 -103
- package/mobile/node_modules/@bsv/sdk/dist/types/src/storage/StorageUploader.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/storage/StorageUtils.d.ts +0 -32
- package/mobile/node_modules/@bsv/sdk/dist/types/src/storage/StorageUtils.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/storage/index.d.ts +0 -4
- package/mobile/node_modules/@bsv/sdk/dist/types/src/storage/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/totp/index.d.ts +0 -2
- package/mobile/node_modules/@bsv/sdk/dist/types/src/totp/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/totp/totp.d.ts +0 -42
- package/mobile/node_modules/@bsv/sdk/dist/types/src/totp/totp.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/Beef.d.ts +0 -248
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/Beef.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/BeefParty.d.ts +0 -73
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/BeefParty.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/BeefTx.d.ts +0 -43
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/BeefTx.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/Broadcaster.d.ts +0 -55
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/Broadcaster.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/ChainTracker.d.ts +0 -29
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/ChainTracker.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/FeeModel.d.ts +0 -12
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/FeeModel.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/MerklePath.d.ts +0 -125
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/MerklePath.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/Transaction.d.ts +0 -299
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/Transaction.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/TransactionInput.d.ts +0 -63
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/TransactionInput.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/TransactionOutput.d.ts +0 -36
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/TransactionOutput.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/broadcasters/ARC.d.ts +0 -64
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/broadcasters/ARC.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/broadcasters/DefaultBroadcaster.d.ts +0 -4
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/broadcasters/DefaultBroadcaster.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/broadcasters/Teranode.d.ts +0 -25
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/broadcasters/Teranode.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/broadcasters/WhatsOnChainBroadcaster.d.ts +0 -26
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/broadcasters/WhatsOnChainBroadcaster.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/broadcasters/index.d.ts +0 -6
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/broadcasters/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/chaintrackers/BlockHeadersService.d.ts +0 -46
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/chaintrackers/BlockHeadersService.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/chaintrackers/DefaultChainTracker.d.ts +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/chaintrackers/DefaultChainTracker.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/chaintrackers/WhatsOnChain.d.ts +0 -29
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/chaintrackers/WhatsOnChain.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/chaintrackers/index.d.ts +0 -5
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/chaintrackers/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/fee-models/LivePolicy.d.ts +0 -41
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/fee-models/LivePolicy.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/fee-models/SatoshisPerKilobyte.d.ts +0 -26
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/fee-models/SatoshisPerKilobyte.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/fee-models/index.d.ts +0 -3
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/fee-models/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/http/BinaryFetchClient.d.ts +0 -48
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/http/BinaryFetchClient.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/http/DefaultHttpClient.d.ts +0 -8
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/http/DefaultHttpClient.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/http/FetchHttpClient.d.ts +0 -29
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/http/FetchHttpClient.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/http/HttpClient.d.ts +0 -45
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/http/HttpClient.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/http/NodejsHttpClient.d.ts +0 -20
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/http/NodejsHttpClient.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/http/index.d.ts +0 -8
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/http/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/index.d.ts +0 -11
- package/mobile/node_modules/@bsv/sdk/dist/types/src/transaction/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/CachedKeyDeriver.d.ts +0 -102
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/CachedKeyDeriver.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/KeyDeriver.d.ts +0 -130
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/KeyDeriver.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/ProtoWallet.d.ts +0 -27
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/ProtoWallet.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/WERR_INSUFFICIENT_FUNDS.d.ts +0 -19
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/WERR_INSUFFICIENT_FUNDS.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/WERR_INVALID_PARAMETER.d.ts +0 -13
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/WERR_INVALID_PARAMETER.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/WERR_REVIEW_ACTIONS.d.ts +0 -23
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/WERR_REVIEW_ACTIONS.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/Wallet.interfaces.d.ts +0 -1068
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/Wallet.interfaces.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/WalletClient.d.ts +0 -180
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/WalletClient.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/WalletError.d.ts +0 -28
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/WalletError.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/WalletLoggerInterface.d.ts +0 -79
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/WalletLoggerInterface.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/index.d.ts +0 -14
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/substrates/HTTPWalletJSON.d.ts +0 -189
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/substrates/HTTPWalletJSON.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/substrates/HTTPWalletWire.d.ts +0 -9
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/substrates/HTTPWalletWire.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/substrates/ReactNativeWebView.d.ts +0 -412
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/substrates/ReactNativeWebView.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/substrates/WalletWire.d.ts +0 -7
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/substrates/WalletWire.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/substrates/WalletWireCalls.d.ts +0 -33
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/substrates/WalletWireCalls.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/substrates/WalletWireProcessor.d.ts +0 -18
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/substrates/WalletWireProcessor.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/substrates/WalletWireTransceiver.d.ts +0 -196
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/substrates/WalletWireTransceiver.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/substrates/XDM.d.ts +0 -412
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/substrates/XDM.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/substrates/index.d.ts +0 -10
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/substrates/index.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/substrates/utils/toOriginHeader.d.ts +0 -2
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/substrates/utils/toOriginHeader.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/substrates/window.CWI.d.ts +0 -410
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/substrates/window.CWI.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/validationHelpers.d.ts +0 -514
- package/mobile/node_modules/@bsv/sdk/dist/types/src/wallet/validationHelpers.d.ts.map +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/types/tsconfig.types.tsbuildinfo +0 -1
- package/mobile/node_modules/@bsv/sdk/dist/umd/bundle.js +0 -20
- package/mobile/node_modules/@bsv/sdk/dist/umd/bundle.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/docs/fast-docs.png +0 -0
- package/mobile/node_modules/@bsv/sdk/docs/index.md +0 -77
- package/mobile/node_modules/@bsv/sdk/docs/performance.md +0 -70
- package/mobile/node_modules/@bsv/sdk/docs/reference/auth.md +0 -1330
- package/mobile/node_modules/@bsv/sdk/docs/reference/compat.md +0 -2951
- package/mobile/node_modules/@bsv/sdk/docs/reference/identity.md +0 -383
- package/mobile/node_modules/@bsv/sdk/docs/reference/kvstore.md +0 -648
- package/mobile/node_modules/@bsv/sdk/docs/reference/messages.md +0 -158
- package/mobile/node_modules/@bsv/sdk/docs/reference/overlay-tools.md +0 -691
- package/mobile/node_modules/@bsv/sdk/docs/reference/primitives.md +0 -6262
- package/mobile/node_modules/@bsv/sdk/docs/reference/registry.md +0 -408
- package/mobile/node_modules/@bsv/sdk/docs/reference/script.md +0 -942
- package/mobile/node_modules/@bsv/sdk/docs/reference/storage.md +0 -411
- package/mobile/node_modules/@bsv/sdk/docs/reference/totp.md +0 -121
- package/mobile/node_modules/@bsv/sdk/docs/reference/transaction.md +0 -2332
- package/mobile/node_modules/@bsv/sdk/docs/reference/wallet.md +0 -6054
- package/mobile/node_modules/@bsv/sdk/docs/requirements.txt +0 -3
- package/mobile/node_modules/@bsv/sdk/docs/swagger/dist/LICENSE +0 -21
- package/mobile/node_modules/@bsv/sdk/docs/swagger/dist/favicon-16x16.png +0 -0
- package/mobile/node_modules/@bsv/sdk/docs/swagger/dist/favicon-32x32.png +0 -0
- package/mobile/node_modules/@bsv/sdk/docs/swagger/dist/index.css +0 -16
- package/mobile/node_modules/@bsv/sdk/docs/swagger/dist/oauth2-redirect.html +0 -79
- package/mobile/node_modules/@bsv/sdk/docs/swagger/dist/swagger-initializer.js +0 -20
- package/mobile/node_modules/@bsv/sdk/docs/swagger/dist/swagger-ui-bundle.js +0 -2
- package/mobile/node_modules/@bsv/sdk/docs/swagger/dist/swagger-ui-bundle.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/docs/swagger/dist/swagger-ui-es-bundle-core.js +0 -3
- package/mobile/node_modules/@bsv/sdk/docs/swagger/dist/swagger-ui-es-bundle-core.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/docs/swagger/dist/swagger-ui-es-bundle.js +0 -2
- package/mobile/node_modules/@bsv/sdk/docs/swagger/dist/swagger-ui-es-bundle.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/docs/swagger/dist/swagger-ui-standalone-preset.js +0 -2
- package/mobile/node_modules/@bsv/sdk/docs/swagger/dist/swagger-ui-standalone-preset.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/docs/swagger/dist/swagger-ui.css +0 -3
- package/mobile/node_modules/@bsv/sdk/docs/swagger/dist/swagger-ui.css.map +0 -1
- package/mobile/node_modules/@bsv/sdk/docs/swagger/dist/swagger-ui.js +0 -2
- package/mobile/node_modules/@bsv/sdk/docs/swagger/dist/swagger-ui.js.map +0 -1
- package/mobile/node_modules/@bsv/sdk/docs/swagger/index.html +0 -19
- package/mobile/node_modules/@bsv/sdk/docs/swagger/swagger-ui.version +0 -1
- package/mobile/node_modules/@bsv/sdk/docs/swagger/swagger.yaml +0 -1960
- package/mobile/node_modules/@bsv/sdk/docs/swagger.png +0 -0
- package/mobile/node_modules/@bsv/sdk/mod.ts +0 -19
- package/mobile/node_modules/@bsv/sdk/package.json +0 -268
- package/mobile/node_modules/@bsv/sdk/src/auth/Peer.ts +0 -875
- package/mobile/node_modules/@bsv/sdk/src/auth/SessionManager.ts +0 -145
- package/mobile/node_modules/@bsv/sdk/src/auth/__tests/Peer.test.ts +0 -1059
- package/mobile/node_modules/@bsv/sdk/src/auth/__tests/SessionManager.test.ts +0 -136
- package/mobile/node_modules/@bsv/sdk/src/auth/__tests/build.test.ts +0 -11
- package/mobile/node_modules/@bsv/sdk/src/auth/certificates/Certificate.ts +0 -311
- package/mobile/node_modules/@bsv/sdk/src/auth/certificates/MasterCertificate.ts +0 -360
- package/mobile/node_modules/@bsv/sdk/src/auth/certificates/VerifiableCertificate.ts +0 -125
- package/mobile/node_modules/@bsv/sdk/src/auth/certificates/__tests/Certificate.test.ts +0 -386
- package/mobile/node_modules/@bsv/sdk/src/auth/certificates/__tests/CompletedProtoWallet.ts +0 -202
- package/mobile/node_modules/@bsv/sdk/src/auth/certificates/__tests/MasterCertificate.test.ts +0 -424
- package/mobile/node_modules/@bsv/sdk/src/auth/certificates/__tests/VerifiableCertificate.test.ts +0 -179
- package/mobile/node_modules/@bsv/sdk/src/auth/certificates/index.ts +0 -4
- package/mobile/node_modules/@bsv/sdk/src/auth/clients/AuthFetch.ts +0 -881
- package/mobile/node_modules/@bsv/sdk/src/auth/clients/__tests__/AuthFetch.test.ts +0 -262
- package/mobile/node_modules/@bsv/sdk/src/auth/clients/index.ts +0 -1
- package/mobile/node_modules/@bsv/sdk/src/auth/index.ts +0 -7
- package/mobile/node_modules/@bsv/sdk/src/auth/transports/SimplifiedFetchTransport.ts +0 -446
- package/mobile/node_modules/@bsv/sdk/src/auth/transports/__tests__/SimplifiedFetchTransport.test.ts +0 -126
- package/mobile/node_modules/@bsv/sdk/src/auth/transports/index.ts +0 -1
- package/mobile/node_modules/@bsv/sdk/src/auth/types.ts +0 -42
- package/mobile/node_modules/@bsv/sdk/src/auth/utils/__tests/cryptononce.test.ts +0 -146
- package/mobile/node_modules/@bsv/sdk/src/auth/utils/__tests/getVerifiableCertificates.test.ts +0 -152
- package/mobile/node_modules/@bsv/sdk/src/auth/utils/__tests/validateCertificates.test.ts +0 -164
- package/mobile/node_modules/@bsv/sdk/src/auth/utils/createNonce.ts +0 -33
- package/mobile/node_modules/@bsv/sdk/src/auth/utils/getVerifiableCertificates.ts +0 -46
- package/mobile/node_modules/@bsv/sdk/src/auth/utils/index.ts +0 -4
- package/mobile/node_modules/@bsv/sdk/src/auth/utils/validateCertificates.ts +0 -73
- package/mobile/node_modules/@bsv/sdk/src/auth/utils/verifyNonce.ts +0 -34
- package/mobile/node_modules/@bsv/sdk/src/compat/BSM.ts +0 -66
- package/mobile/node_modules/@bsv/sdk/src/compat/ECIES.ts +0 -701
- package/mobile/node_modules/@bsv/sdk/src/compat/HD.ts +0 -386
- package/mobile/node_modules/@bsv/sdk/src/compat/Mnemonic.ts +0 -308
- package/mobile/node_modules/@bsv/sdk/src/compat/Utxo.ts +0 -59
- package/mobile/node_modules/@bsv/sdk/src/compat/__tests/BSM.test.ts +0 -80
- package/mobile/node_modules/@bsv/sdk/src/compat/__tests/ECIES.test.ts +0 -184
- package/mobile/node_modules/@bsv/sdk/src/compat/__tests/HD.test.ts +0 -417
- package/mobile/node_modules/@bsv/sdk/src/compat/__tests/Mnemonic.test.ts +0 -175
- package/mobile/node_modules/@bsv/sdk/src/compat/__tests/Mnemonic.vectors.ts +0 -227
- package/mobile/node_modules/@bsv/sdk/src/compat/bip-39-wordlist-en.ts +0 -2053
- package/mobile/node_modules/@bsv/sdk/src/compat/index.ts +0 -5
- package/mobile/node_modules/@bsv/sdk/src/identity/ContactsManager.ts +0 -376
- package/mobile/node_modules/@bsv/sdk/src/identity/IdentityClient.ts +0 -497
- package/mobile/node_modules/@bsv/sdk/src/identity/README.md +0 -92
- package/mobile/node_modules/@bsv/sdk/src/identity/__tests/IdentityClient.test.ts +0 -772
- package/mobile/node_modules/@bsv/sdk/src/identity/index.ts +0 -2
- package/mobile/node_modules/@bsv/sdk/src/identity/types/index.ts +0 -46
- package/mobile/node_modules/@bsv/sdk/src/kvstore/GlobalKVStore.ts +0 -523
- package/mobile/node_modules/@bsv/sdk/src/kvstore/LocalKVStore.ts +0 -357
- package/mobile/node_modules/@bsv/sdk/src/kvstore/__tests/GlobalKVStore.test.ts +0 -1104
- package/mobile/node_modules/@bsv/sdk/src/kvstore/__tests/LocalKVStore.test.ts +0 -686
- package/mobile/node_modules/@bsv/sdk/src/kvstore/index.ts +0 -2
- package/mobile/node_modules/@bsv/sdk/src/kvstore/kvStoreInterpreter.ts +0 -54
- package/mobile/node_modules/@bsv/sdk/src/kvstore/types.ts +0 -126
- package/mobile/node_modules/@bsv/sdk/src/messages/EncryptedMessage.ts +0 -74
- package/mobile/node_modules/@bsv/sdk/src/messages/SignedMessage.ts +0 -93
- package/mobile/node_modules/@bsv/sdk/src/messages/__tests/EncryptedMessage.test.ts +0 -61
- package/mobile/node_modules/@bsv/sdk/src/messages/__tests/SignedMessage.test.ts +0 -59
- package/mobile/node_modules/@bsv/sdk/src/messages/index.ts +0 -2
- package/mobile/node_modules/@bsv/sdk/src/overlay-tools/Historian.ts +0 -195
- package/mobile/node_modules/@bsv/sdk/src/overlay-tools/HostReputationTracker.ts +0 -232
- package/mobile/node_modules/@bsv/sdk/src/overlay-tools/LookupResolver.ts +0 -499
- package/mobile/node_modules/@bsv/sdk/src/overlay-tools/OverlayAdminTokenTemplate.ts +0 -108
- package/mobile/node_modules/@bsv/sdk/src/overlay-tools/SHIPBroadcaster.ts +0 -504
- package/mobile/node_modules/@bsv/sdk/src/overlay-tools/__tests/Historian.test.ts +0 -690
- package/mobile/node_modules/@bsv/sdk/src/overlay-tools/__tests/LookupResolver.test.ts +0 -1805
- package/mobile/node_modules/@bsv/sdk/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.ts +0 -97
- package/mobile/node_modules/@bsv/sdk/src/overlay-tools/__tests/SHIPBroadcaster.test.ts +0 -1304
- package/mobile/node_modules/@bsv/sdk/src/overlay-tools/index.ts +0 -11
- package/mobile/node_modules/@bsv/sdk/src/overlay-tools/withDoubleSpendRetry.ts +0 -71
- package/mobile/node_modules/@bsv/sdk/src/primitives/AESGCM.ts +0 -457
- package/mobile/node_modules/@bsv/sdk/src/primitives/BasePoint.ts +0 -21
- package/mobile/node_modules/@bsv/sdk/src/primitives/BigNumber.ts +0 -1368
- package/mobile/node_modules/@bsv/sdk/src/primitives/Curve.ts +0 -1234
- package/mobile/node_modules/@bsv/sdk/src/primitives/DRBG.ts +0 -118
- package/mobile/node_modules/@bsv/sdk/src/primitives/ECDSA.ts +0 -208
- package/mobile/node_modules/@bsv/sdk/src/primitives/Hash.ts +0 -1924
- package/mobile/node_modules/@bsv/sdk/src/primitives/JacobianPoint.ts +0 -475
- package/mobile/node_modules/@bsv/sdk/src/primitives/K256.ts +0 -136
- package/mobile/node_modules/@bsv/sdk/src/primitives/Mersenne.ts +0 -119
- package/mobile/node_modules/@bsv/sdk/src/primitives/MontgomoryMethod.ts +0 -160
- package/mobile/node_modules/@bsv/sdk/src/primitives/Point.ts +0 -1200
- package/mobile/node_modules/@bsv/sdk/src/primitives/Polynomial.ts +0 -94
- package/mobile/node_modules/@bsv/sdk/src/primitives/PrivateKey.ts +0 -524
- package/mobile/node_modules/@bsv/sdk/src/primitives/PublicKey.ts +0 -282
- package/mobile/node_modules/@bsv/sdk/src/primitives/Random.ts +0 -101
- package/mobile/node_modules/@bsv/sdk/src/primitives/ReductionContext.ts +0 -528
- package/mobile/node_modules/@bsv/sdk/src/primitives/Schnorr.ts +0 -117
- package/mobile/node_modules/@bsv/sdk/src/primitives/Secp256r1.ts +0 -334
- package/mobile/node_modules/@bsv/sdk/src/primitives/Signature.ts +0 -389
- package/mobile/node_modules/@bsv/sdk/src/primitives/SymmetricKey.ts +0 -102
- package/mobile/node_modules/@bsv/sdk/src/primitives/TransactionSignature.ts +0 -260
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/AESGCM.test.ts +0 -700
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/BRC42.private.vectors.ts +0 -48
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/BRC42.public.vectors.ts +0 -48
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/BigNumber.arithmatic.test.ts +0 -791
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/BigNumber.binary.test.ts +0 -284
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/BigNumber.constructor.test.ts +0 -216
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/BigNumber.dhGroup.test.ts +0 -22
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/BigNumber.fixtures.ts +0 -272
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/BigNumber.serializers.test.ts +0 -183
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/BigNumber.utils.test.ts +0 -437
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/Curve.unit.test.ts +0 -277
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/DRBG.test.ts +0 -281
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/DRBG.vectors.ts +0 -137
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/ECDH.test.ts +0 -38
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/ECDSA.test.ts +0 -93
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/HMAC.test.ts +0 -76
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/Hash.test.ts +0 -256
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/PBKDF2.vectors.ts +0 -132
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/PrivateKey.split.test.ts +0 -92
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/PrivateKey.test.ts +0 -98
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/PublicKey.test.ts +0 -96
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/Random.test.ts +0 -35
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/Reader.test.ts +0 -317
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/ReductionContext.test.ts +0 -321
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/Schnorr.test.ts +0 -284
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/Secp256r1.test.ts +0 -101
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/SymmetricKey.test.ts +0 -128
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/SymmetricKey.vectors.ts +0 -48
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/SymmetricKeyCompatibility.test.ts +0 -150
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/Writer.test.ts +0 -208
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/bug-31.test.ts +0 -27
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/hex.test.ts +0 -57
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/sighash.vectors.ts +0 -3503
- package/mobile/node_modules/@bsv/sdk/src/primitives/__tests/utils.test.ts +0 -378
- package/mobile/node_modules/@bsv/sdk/src/primitives/hex.ts +0 -35
- package/mobile/node_modules/@bsv/sdk/src/primitives/index.ts +0 -15
- package/mobile/node_modules/@bsv/sdk/src/primitives/utils.ts +0 -953
- package/mobile/node_modules/@bsv/sdk/src/registry/RegistryClient.ts +0 -667
- package/mobile/node_modules/@bsv/sdk/src/registry/__tests/RegistryClient.test.ts +0 -647
- package/mobile/node_modules/@bsv/sdk/src/registry/index.ts +0 -2
- package/mobile/node_modules/@bsv/sdk/src/registry/types/index.ts +0 -131
- package/mobile/node_modules/@bsv/sdk/src/script/LockingScript.ts +0 -30
- package/mobile/node_modules/@bsv/sdk/src/script/OP.ts +0 -218
- package/mobile/node_modules/@bsv/sdk/src/script/Script.ts +0 -591
- package/mobile/node_modules/@bsv/sdk/src/script/ScriptChunk.ts +0 -7
- package/mobile/node_modules/@bsv/sdk/src/script/ScriptEvaluationError.ts +0 -44
- package/mobile/node_modules/@bsv/sdk/src/script/ScriptTemplate.ts +0 -30
- package/mobile/node_modules/@bsv/sdk/src/script/ScriptTemplateUnlock.ts +0 -7
- package/mobile/node_modules/@bsv/sdk/src/script/Spend.ts +0 -1085
- package/mobile/node_modules/@bsv/sdk/src/script/UnlockingScript.ts +0 -30
- package/mobile/node_modules/@bsv/sdk/src/script/__tests/Script.test.ts +0 -429
- package/mobile/node_modules/@bsv/sdk/src/script/__tests/Spend.test.ts +0 -555
- package/mobile/node_modules/@bsv/sdk/src/script/__tests/SpendComplex.test.ts +0 -48
- package/mobile/node_modules/@bsv/sdk/src/script/__tests/script.invalid.vectors.ts +0 -999
- package/mobile/node_modules/@bsv/sdk/src/script/__tests/script.valid.vectors.ts +0 -1178
- package/mobile/node_modules/@bsv/sdk/src/script/__tests/spend.valid.vectors.ts +0 -2295
- package/mobile/node_modules/@bsv/sdk/src/script/index.ts +0 -10
- package/mobile/node_modules/@bsv/sdk/src/script/templates/P2PKH.ts +0 -157
- package/mobile/node_modules/@bsv/sdk/src/script/templates/PushDrop.ts +0 -281
- package/mobile/node_modules/@bsv/sdk/src/script/templates/RPuzzle.ts +0 -161
- package/mobile/node_modules/@bsv/sdk/src/script/templates/__tests/PushDrop.test.ts +0 -263
- package/mobile/node_modules/@bsv/sdk/src/script/templates/index.ts +0 -3
- package/mobile/node_modules/@bsv/sdk/src/storage/StorageDownloader.ts +0 -114
- package/mobile/node_modules/@bsv/sdk/src/storage/StorageUploader.ts +0 -258
- package/mobile/node_modules/@bsv/sdk/src/storage/StorageUtils.ts +0 -74
- package/mobile/node_modules/@bsv/sdk/src/storage/__tests/StorageDownloader.test.ts +0 -236
- package/mobile/node_modules/@bsv/sdk/src/storage/__tests/StorageUploader.test.ts +0 -219
- package/mobile/node_modules/@bsv/sdk/src/storage/__tests/StorageUtils.test.ts +0 -86
- package/mobile/node_modules/@bsv/sdk/src/storage/index.ts +0 -5
- package/mobile/node_modules/@bsv/sdk/src/totp/__tests/totp.test.ts +0 -81
- package/mobile/node_modules/@bsv/sdk/src/totp/index.ts +0 -1
- package/mobile/node_modules/@bsv/sdk/src/totp/totp.ts +0 -138
- package/mobile/node_modules/@bsv/sdk/src/transaction/Beef.ts +0 -935
- package/mobile/node_modules/@bsv/sdk/src/transaction/BeefParty.ts +0 -123
- package/mobile/node_modules/@bsv/sdk/src/transaction/BeefTx.ts +0 -194
- package/mobile/node_modules/@bsv/sdk/src/transaction/Broadcaster.ts +0 -69
- package/mobile/node_modules/@bsv/sdk/src/transaction/ChainTracker.ts +0 -28
- package/mobile/node_modules/@bsv/sdk/src/transaction/FeeModel.ts +0 -12
- package/mobile/node_modules/@bsv/sdk/src/transaction/MerklePath.ts +0 -455
- package/mobile/node_modules/@bsv/sdk/src/transaction/Transaction.ts +0 -1055
- package/mobile/node_modules/@bsv/sdk/src/transaction/TransactionInput.ts +0 -63
- package/mobile/node_modules/@bsv/sdk/src/transaction/TransactionOutput.ts +0 -36
- package/mobile/node_modules/@bsv/sdk/src/transaction/__tests/Beef.test.ts +0 -500
- package/mobile/node_modules/@bsv/sdk/src/transaction/__tests/MerklePath.test.ts +0 -249
- package/mobile/node_modules/@bsv/sdk/src/transaction/__tests/Transaction.test.ts +0 -1419
- package/mobile/node_modules/@bsv/sdk/src/transaction/__tests/bigtx.vectors.ts +0 -5
- package/mobile/node_modules/@bsv/sdk/src/transaction/__tests/bump.invalid.vectors.ts +0 -26
- package/mobile/node_modules/@bsv/sdk/src/transaction/__tests/bump.valid.vectors.ts +0 -8
- package/mobile/node_modules/@bsv/sdk/src/transaction/__tests/tx.invalid.vectors.ts +0 -977
- package/mobile/node_modules/@bsv/sdk/src/transaction/__tests/tx.valid.vectors.ts +0 -1317
- package/mobile/node_modules/@bsv/sdk/src/transaction/broadcasters/ARC.ts +0 -255
- package/mobile/node_modules/@bsv/sdk/src/transaction/broadcasters/DefaultBroadcaster.ts +0 -12
- package/mobile/node_modules/@bsv/sdk/src/transaction/broadcasters/Teranode.ts +0 -77
- package/mobile/node_modules/@bsv/sdk/src/transaction/broadcasters/WhatsOnChainBroadcaster.ts +0 -83
- package/mobile/node_modules/@bsv/sdk/src/transaction/broadcasters/__tests/ARC.test.ts +0 -323
- package/mobile/node_modules/@bsv/sdk/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.ts +0 -171
- package/mobile/node_modules/@bsv/sdk/src/transaction/broadcasters/index.ts +0 -5
- package/mobile/node_modules/@bsv/sdk/src/transaction/chaintrackers/BlockHeadersService.ts +0 -138
- package/mobile/node_modules/@bsv/sdk/src/transaction/chaintrackers/DefaultChainTracker.ts +0 -6
- package/mobile/node_modules/@bsv/sdk/src/transaction/chaintrackers/WhatsOnChain.ts +0 -102
- package/mobile/node_modules/@bsv/sdk/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.ts +0 -198
- package/mobile/node_modules/@bsv/sdk/src/transaction/chaintrackers/index.ts +0 -4
- package/mobile/node_modules/@bsv/sdk/src/transaction/fee-models/LivePolicy.ts +0 -97
- package/mobile/node_modules/@bsv/sdk/src/transaction/fee-models/SatoshisPerKilobyte.ts +0 -75
- package/mobile/node_modules/@bsv/sdk/src/transaction/fee-models/__tests/LivePolicy.test.ts +0 -148
- package/mobile/node_modules/@bsv/sdk/src/transaction/fee-models/index.ts +0 -2
- package/mobile/node_modules/@bsv/sdk/src/transaction/http/BinaryFetchClient.ts +0 -141
- package/mobile/node_modules/@bsv/sdk/src/transaction/http/DefaultHttpClient.ts +0 -33
- package/mobile/node_modules/@bsv/sdk/src/transaction/http/FetchHttpClient.ts +0 -57
- package/mobile/node_modules/@bsv/sdk/src/transaction/http/HttpClient.ts +0 -51
- package/mobile/node_modules/@bsv/sdk/src/transaction/http/NodejsHttpClient.ts +0 -67
- package/mobile/node_modules/@bsv/sdk/src/transaction/http/index.ts +0 -11
- package/mobile/node_modules/@bsv/sdk/src/transaction/index.ts +0 -14
- package/mobile/node_modules/@bsv/sdk/src/wallet/CachedKeyDeriver.ts +0 -287
- package/mobile/node_modules/@bsv/sdk/src/wallet/KeyDeriver.ts +0 -342
- package/mobile/node_modules/@bsv/sdk/src/wallet/ProtoWallet.ts +0 -300
- package/mobile/node_modules/@bsv/sdk/src/wallet/WERR_INSUFFICIENT_FUNDS.ts +0 -25
- package/mobile/node_modules/@bsv/sdk/src/wallet/WERR_INVALID_PARAMETER.ts +0 -20
- package/mobile/node_modules/@bsv/sdk/src/wallet/WERR_REVIEW_ACTIONS.ts +0 -30
- package/mobile/node_modules/@bsv/sdk/src/wallet/Wallet.interfaces.ts +0 -1308
- package/mobile/node_modules/@bsv/sdk/src/wallet/WalletClient.ts +0 -504
- package/mobile/node_modules/@bsv/sdk/src/wallet/WalletError.ts +0 -81
- package/mobile/node_modules/@bsv/sdk/src/wallet/WalletLoggerInterface.ts +0 -85
- package/mobile/node_modules/@bsv/sdk/src/wallet/__tests/CachedKeyDeriver.test.ts +0 -381
- package/mobile/node_modules/@bsv/sdk/src/wallet/__tests/KeyDeriver.test.ts +0 -221
- package/mobile/node_modules/@bsv/sdk/src/wallet/__tests/ProtoWallet.test.ts +0 -592
- package/mobile/node_modules/@bsv/sdk/src/wallet/__tests/WalletClient.test.ts +0 -31
- package/mobile/node_modules/@bsv/sdk/src/wallet/index.ts +0 -14
- package/mobile/node_modules/@bsv/sdk/src/wallet/substrates/HTTPWalletJSON.ts +0 -364
- package/mobile/node_modules/@bsv/sdk/src/wallet/substrates/HTTPWalletWire.ts +0 -51
- package/mobile/node_modules/@bsv/sdk/src/wallet/substrates/ReactNativeWebView.ts +0 -560
- package/mobile/node_modules/@bsv/sdk/src/wallet/substrates/WalletWire.ts +0 -6
- package/mobile/node_modules/@bsv/sdk/src/wallet/substrates/WalletWireCalls.ts +0 -34
- package/mobile/node_modules/@bsv/sdk/src/wallet/substrates/WalletWireProcessor.ts +0 -2206
- package/mobile/node_modules/@bsv/sdk/src/wallet/substrates/WalletWireTransceiver.ts +0 -2032
- package/mobile/node_modules/@bsv/sdk/src/wallet/substrates/XDM.ts +0 -547
- package/mobile/node_modules/@bsv/sdk/src/wallet/substrates/__tests/WalletWire.integration.test.ts +0 -2353
- package/mobile/node_modules/@bsv/sdk/src/wallet/substrates/__tests/XDM.test.ts +0 -660
- package/mobile/node_modules/@bsv/sdk/src/wallet/substrates/__tests/toOriginHeader.test.ts +0 -34
- package/mobile/node_modules/@bsv/sdk/src/wallet/substrates/index.ts +0 -9
- package/mobile/node_modules/@bsv/sdk/src/wallet/substrates/utils/toOriginHeader.ts +0 -15
- package/mobile/node_modules/@bsv/sdk/src/wallet/substrates/window.CWI.ts +0 -593
- package/mobile/node_modules/@bsv/sdk/src/wallet/validationHelpers.ts +0 -1215
- package/mobile/out/src/CWIStyleWalletManager.d.ts +0 -439
- package/mobile/out/src/CWIStyleWalletManager.d.ts.map +0 -1
- package/mobile/out/src/CWIStyleWalletManager.js +0 -1317
- package/mobile/out/src/CWIStyleWalletManager.js.map +0 -1
- package/mobile/out/src/SetupClient.d.ts +0 -130
- package/mobile/out/src/SetupClient.d.ts.map +0 -1
- package/mobile/out/src/SetupClient.js +0 -226
- package/mobile/out/src/SetupClient.js.map +0 -1
- package/mobile/out/src/SetupWallet.d.ts +0 -103
- package/mobile/out/src/SetupWallet.d.ts.map +0 -1
- package/mobile/out/src/SetupWallet.js +0 -3
- package/mobile/out/src/SetupWallet.js.map +0 -1
- package/mobile/out/src/SimpleWalletManager.d.ts +0 -169
- package/mobile/out/src/SimpleWalletManager.d.ts.map +0 -1
- package/mobile/out/src/SimpleWalletManager.js +0 -315
- package/mobile/out/src/SimpleWalletManager.js.map +0 -1
- package/mobile/out/src/Wallet.d.ts +0 -206
- package/mobile/out/src/Wallet.d.ts.map +0 -1
- package/mobile/out/src/Wallet.js +0 -797
- package/mobile/out/src/Wallet.js.map +0 -1
- package/mobile/out/src/WalletAuthenticationManager.d.ts +0 -33
- package/mobile/out/src/WalletAuthenticationManager.d.ts.map +0 -1
- package/mobile/out/src/WalletAuthenticationManager.js +0 -113
- package/mobile/out/src/WalletAuthenticationManager.js.map +0 -1
- package/mobile/out/src/WalletLogger.d.ts +0 -65
- package/mobile/out/src/WalletLogger.d.ts.map +0 -1
- package/mobile/out/src/WalletLogger.js +0 -167
- package/mobile/out/src/WalletLogger.js.map +0 -1
- package/mobile/out/src/WalletPermissionsManager.d.ts +0 -760
- package/mobile/out/src/WalletPermissionsManager.d.ts.map +0 -1
- package/mobile/out/src/WalletPermissionsManager.js +0 -2679
- package/mobile/out/src/WalletPermissionsManager.js.map +0 -1
- package/mobile/out/src/WalletSettingsManager.d.ts +0 -53
- package/mobile/out/src/WalletSettingsManager.d.ts.map +0 -1
- package/mobile/out/src/WalletSettingsManager.js +0 -83
- package/mobile/out/src/WalletSettingsManager.js.map +0 -1
- package/mobile/out/src/index.client.d.ts +0 -23
- package/mobile/out/src/index.client.d.ts.map +0 -1
- package/mobile/out/src/index.client.js +0 -62
- package/mobile/out/src/index.client.js.map +0 -1
- package/mobile/out/src/index.mobile.d.ts +0 -20
- package/mobile/out/src/index.mobile.d.ts.map +0 -1
- package/mobile/out/src/index.mobile.js +0 -59
- package/mobile/out/src/index.mobile.js.map +0 -1
- package/mobile/out/src/monitor/Monitor.d.ts +0 -148
- package/mobile/out/src/monitor/Monitor.d.ts.map +0 -1
- package/mobile/out/src/monitor/Monitor.js +0 -317
- package/mobile/out/src/monitor/Monitor.js.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskCheckForProofs.d.ts +0 -53
- package/mobile/out/src/monitor/tasks/TaskCheckForProofs.d.ts.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskCheckForProofs.js +0 -213
- package/mobile/out/src/monitor/tasks/TaskCheckForProofs.js.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskCheckNoSends.d.ts +0 -33
- package/mobile/out/src/monitor/tasks/TaskCheckNoSends.d.ts.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskCheckNoSends.js +0 -71
- package/mobile/out/src/monitor/tasks/TaskCheckNoSends.js.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskClock.d.ts +0 -14
- package/mobile/out/src/monitor/tasks/TaskClock.d.ts.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskClock.js +0 -28
- package/mobile/out/src/monitor/tasks/TaskClock.js.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskFailAbandoned.d.ts +0 -20
- package/mobile/out/src/monitor/tasks/TaskFailAbandoned.d.ts.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskFailAbandoned.js +0 -52
- package/mobile/out/src/monitor/tasks/TaskFailAbandoned.js.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskMonitorCallHistory.d.ts +0 -12
- package/mobile/out/src/monitor/tasks/TaskMonitorCallHistory.d.ts.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskMonitorCallHistory.js +0 -24
- package/mobile/out/src/monitor/tasks/TaskMonitorCallHistory.js.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskNewHeader.d.ts +0 -50
- package/mobile/out/src/monitor/tasks/TaskNewHeader.d.ts.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskNewHeader.js +0 -84
- package/mobile/out/src/monitor/tasks/TaskNewHeader.js.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskPurge.d.ts +0 -45
- package/mobile/out/src/monitor/tasks/TaskPurge.d.ts.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskPurge.js +0 -34
- package/mobile/out/src/monitor/tasks/TaskPurge.js.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskReorg.d.ts +0 -43
- package/mobile/out/src/monitor/tasks/TaskReorg.d.ts.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskReorg.js +0 -82
- package/mobile/out/src/monitor/tasks/TaskReorg.js.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskReviewStatus.d.ts +0 -26
- package/mobile/out/src/monitor/tasks/TaskReviewStatus.d.ts.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskReviewStatus.js +0 -43
- package/mobile/out/src/monitor/tasks/TaskReviewStatus.js.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskSendWaiting.d.ts +0 -35
- package/mobile/out/src/monitor/tasks/TaskSendWaiting.d.ts.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskSendWaiting.js +0 -117
- package/mobile/out/src/monitor/tasks/TaskSendWaiting.js.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskSyncWhenIdle.d.ts +0 -12
- package/mobile/out/src/monitor/tasks/TaskSyncWhenIdle.d.ts.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskSyncWhenIdle.js +0 -22
- package/mobile/out/src/monitor/tasks/TaskSyncWhenIdle.js.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskUnFail.d.ts +0 -41
- package/mobile/out/src/monitor/tasks/TaskUnFail.d.ts.map +0 -1
- package/mobile/out/src/monitor/tasks/TaskUnFail.js +0 -145
- package/mobile/out/src/monitor/tasks/TaskUnFail.js.map +0 -1
- package/mobile/out/src/monitor/tasks/WalletMonitorTask.d.ts +0 -40
- package/mobile/out/src/monitor/tasks/WalletMonitorTask.d.ts.map +0 -1
- package/mobile/out/src/monitor/tasks/WalletMonitorTask.js +0 -37
- package/mobile/out/src/monitor/tasks/WalletMonitorTask.js.map +0 -1
- package/mobile/out/src/sdk/CertOpsWallet.d.ts +0 -7
- package/mobile/out/src/sdk/CertOpsWallet.d.ts.map +0 -1
- package/mobile/out/src/sdk/CertOpsWallet.js +0 -3
- package/mobile/out/src/sdk/CertOpsWallet.js.map +0 -1
- package/mobile/out/src/sdk/PrivilegedKeyManager.d.ts +0 -125
- package/mobile/out/src/sdk/PrivilegedKeyManager.d.ts.map +0 -1
- package/mobile/out/src/sdk/PrivilegedKeyManager.js +0 -293
- package/mobile/out/src/sdk/PrivilegedKeyManager.js.map +0 -1
- package/mobile/out/src/sdk/WERR_errors.d.ts +0 -136
- package/mobile/out/src/sdk/WERR_errors.d.ts.map +0 -1
- package/mobile/out/src/sdk/WERR_errors.js +0 -218
- package/mobile/out/src/sdk/WERR_errors.js.map +0 -1
- package/mobile/out/src/sdk/WalletError.d.ts +0 -63
- package/mobile/out/src/sdk/WalletError.d.ts.map +0 -1
- package/mobile/out/src/sdk/WalletError.js +0 -169
- package/mobile/out/src/sdk/WalletError.js.map +0 -1
- package/mobile/out/src/sdk/WalletErrorFromJson.d.ts +0 -12
- package/mobile/out/src/sdk/WalletErrorFromJson.d.ts.map +0 -1
- package/mobile/out/src/sdk/WalletErrorFromJson.js +0 -69
- package/mobile/out/src/sdk/WalletErrorFromJson.js.map +0 -1
- package/mobile/out/src/sdk/WalletServices.interfaces.d.ts +0 -618
- package/mobile/out/src/sdk/WalletServices.interfaces.d.ts.map +0 -1
- package/mobile/out/src/sdk/WalletServices.interfaces.js +0 -3
- package/mobile/out/src/sdk/WalletServices.interfaces.js.map +0 -1
- package/mobile/out/src/sdk/WalletSigner.interfaces.d.ts +0 -10
- package/mobile/out/src/sdk/WalletSigner.interfaces.d.ts.map +0 -1
- package/mobile/out/src/sdk/WalletSigner.interfaces.js +0 -3
- package/mobile/out/src/sdk/WalletSigner.interfaces.js.map +0 -1
- package/mobile/out/src/sdk/WalletStorage.interfaces.d.ts +0 -522
- package/mobile/out/src/sdk/WalletStorage.interfaces.d.ts.map +0 -1
- package/mobile/out/src/sdk/WalletStorage.interfaces.js +0 -3
- package/mobile/out/src/sdk/WalletStorage.interfaces.js.map +0 -1
- package/mobile/out/src/sdk/index.d.ts +0 -11
- package/mobile/out/src/sdk/index.d.ts.map +0 -1
- package/mobile/out/src/sdk/index.js +0 -29
- package/mobile/out/src/sdk/index.js.map +0 -1
- package/mobile/out/src/sdk/types.d.ts +0 -169
- package/mobile/out/src/sdk/types.d.ts.map +0 -1
- package/mobile/out/src/sdk/types.js +0 -90
- package/mobile/out/src/sdk/types.js.map +0 -1
- package/mobile/out/src/services/ServiceCollection.d.ts +0 -79
- package/mobile/out/src/services/ServiceCollection.d.ts.map +0 -1
- package/mobile/out/src/services/ServiceCollection.js +0 -192
- package/mobile/out/src/services/ServiceCollection.js.map +0 -1
- package/mobile/out/src/services/Services.d.ts +0 -71
- package/mobile/out/src/services/Services.d.ts.map +0 -1
- package/mobile/out/src/services/Services.js +0 -532
- package/mobile/out/src/services/Services.js.map +0 -1
- package/mobile/out/src/services/chaintracker/BHServiceClient.d.ts +0 -39
- package/mobile/out/src/services/chaintracker/BHServiceClient.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/BHServiceClient.js +0 -174
- package/mobile/out/src/services/chaintracker/BHServiceClient.js.map +0 -1
- package/mobile/out/src/services/chaintracker/ChaintracksChainTracker.d.ts +0 -15
- package/mobile/out/src/services/chaintracker/ChaintracksChainTracker.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/ChaintracksChainTracker.js +0 -53
- package/mobile/out/src/services/chaintracker/ChaintracksChainTracker.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.d.ts +0 -55
- package/mobile/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.js +0 -38
- package/mobile/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.d.ts +0 -70
- package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.js +0 -3
- package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkStorageApi.d.ts +0 -81
- package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkStorageApi.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkStorageApi.js +0 -3
- package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkStorageApi.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.d.ts +0 -54
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.js +0 -3
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.d.ts +0 -163
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.js +0 -3
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksFetchApi.d.ts +0 -18
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksFetchApi.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksFetchApi.js +0 -3
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksFetchApi.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksFsApi.d.ts +0 -55
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksFsApi.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksFsApi.js +0 -3
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksFsApi.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts +0 -338
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.js +0 -3
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.d.ts +0 -19
- package/mobile/out/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.js +0 -3
- package/mobile/out/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts +0 -101
- package/mobile/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Chaintracks.js +0 -550
- package/mobile/out/src/services/chaintracker/chaintracks/Chaintracks.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts +0 -38
- package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js +0 -139
- package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.d.ts +0 -60
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js +0 -119
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.d.ts +0 -76
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js +0 -114
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.d.ts +0 -13
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.js +0 -20
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.d.ts +0 -62
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js +0 -59
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.d.ts +0 -62
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js +0 -42
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.d.ts +0 -51
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js +0 -55
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts +0 -171
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js +0 -501
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.d.ts +0 -89
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.js +0 -137
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.d.ts +0 -23
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js +0 -68
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts +0 -68
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js +0 -290
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.d.ts +0 -92
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js +0 -465
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts +0 -37
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js +0 -260
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.d.ts +0 -5
- package/mobile/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.js +0 -68
- package/mobile/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.d.ts +0 -5
- package/mobile/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.js +0 -68
- package/mobile/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/createIdbChaintracks.d.ts +0 -13
- package/mobile/out/src/services/chaintracker/chaintracks/createIdbChaintracks.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js +0 -27
- package/mobile/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.d.ts +0 -13
- package/mobile/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.js +0 -27
- package/mobile/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/index.client.d.ts +0 -4
- package/mobile/out/src/services/chaintracker/chaintracks/index.client.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/index.client.js +0 -20
- package/mobile/out/src/services/chaintracker/chaintracks/index.client.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/index.mobile.d.ts +0 -30
- package/mobile/out/src/services/chaintracker/chaintracks/index.mobile.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/index.mobile.js +0 -68
- package/mobile/out/src/services/chaintracker/chaintracks/index.mobile.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts +0 -155
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js +0 -848
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.d.ts +0 -78
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js +0 -261
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts +0 -129
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js +0 -145
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.d.ts +0 -14
- package/mobile/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.js +0 -67
- package/mobile/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/HeightRange.d.ts +0 -90
- package/mobile/out/src/services/chaintracker/chaintracks/util/HeightRange.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/HeightRange.js +0 -140
- package/mobile/out/src/services/chaintracker/chaintracks/util/HeightRange.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.d.ts +0 -14
- package/mobile/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.js +0 -88
- package/mobile/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts +0 -159
- package/mobile/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js +0 -520
- package/mobile/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/dirtyHashes.d.ts +0 -20
- package/mobile/out/src/services/chaintracker/chaintracks/util/dirtyHashes.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/dirtyHashes.js +0 -31
- package/mobile/out/src/services/chaintracker/chaintracks/util/dirtyHashes.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.d.ts +0 -37
- package/mobile/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js +0 -432
- package/mobile/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js.map +0 -1
- package/mobile/out/src/services/chaintracker/index.client.d.ts +0 -4
- package/mobile/out/src/services/chaintracker/index.client.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/index.client.js +0 -20
- package/mobile/out/src/services/chaintracker/index.client.js.map +0 -1
- package/mobile/out/src/services/createDefaultWalletServicesOptions.d.ts +0 -7
- package/mobile/out/src/services/createDefaultWalletServicesOptions.d.ts.map +0 -1
- package/mobile/out/src/services/createDefaultWalletServicesOptions.js +0 -65
- package/mobile/out/src/services/createDefaultWalletServicesOptions.js.map +0 -1
- package/mobile/out/src/services/providers/ARC.d.ts +0 -92
- package/mobile/out/src/services/providers/ARC.d.ts.map +0 -1
- package/mobile/out/src/services/providers/ARC.js +0 -270
- package/mobile/out/src/services/providers/ARC.js.map +0 -1
- package/mobile/out/src/services/providers/Bitails.d.ts +0 -50
- package/mobile/out/src/services/providers/Bitails.d.ts.map +0 -1
- package/mobile/out/src/services/providers/Bitails.js +0 -224
- package/mobile/out/src/services/providers/Bitails.js.map +0 -1
- package/mobile/out/src/services/providers/SdkWhatsOnChain.d.ts +0 -21
- package/mobile/out/src/services/providers/SdkWhatsOnChain.d.ts.map +0 -1
- package/mobile/out/src/services/providers/SdkWhatsOnChain.js +0 -67
- package/mobile/out/src/services/providers/SdkWhatsOnChain.js.map +0 -1
- package/mobile/out/src/services/providers/WhatsOnChain.d.ts +0 -130
- package/mobile/out/src/services/providers/WhatsOnChain.d.ts.map +0 -1
- package/mobile/out/src/services/providers/WhatsOnChain.js +0 -679
- package/mobile/out/src/services/providers/WhatsOnChain.js.map +0 -1
- package/mobile/out/src/services/providers/exchangeRates.d.ts +0 -12
- package/mobile/out/src/services/providers/exchangeRates.d.ts.map +0 -1
- package/mobile/out/src/services/providers/exchangeRates.js +0 -237
- package/mobile/out/src/services/providers/exchangeRates.js.map +0 -1
- package/mobile/out/src/services/providers/getBeefForTxid.d.ts +0 -4
- package/mobile/out/src/services/providers/getBeefForTxid.d.ts.map +0 -1
- package/mobile/out/src/services/providers/getBeefForTxid.js +0 -286
- package/mobile/out/src/services/providers/getBeefForTxid.js.map +0 -1
- package/mobile/out/src/signer/WalletSigner.d.ts +0 -11
- package/mobile/out/src/signer/WalletSigner.d.ts.map +0 -1
- package/mobile/out/src/signer/WalletSigner.js +0 -13
- package/mobile/out/src/signer/WalletSigner.js.map +0 -1
- package/mobile/out/src/signer/methods/acquireDirectCertificate.d.ts +0 -5
- package/mobile/out/src/signer/methods/acquireDirectCertificate.d.ts.map +0 -1
- package/mobile/out/src/signer/methods/acquireDirectCertificate.js +0 -45
- package/mobile/out/src/signer/methods/acquireDirectCertificate.js.map +0 -1
- package/mobile/out/src/signer/methods/buildSignableTransaction.d.ts +0 -15
- package/mobile/out/src/signer/methods/buildSignableTransaction.d.ts.map +0 -1
- package/mobile/out/src/signer/methods/buildSignableTransaction.js +0 -142
- package/mobile/out/src/signer/methods/buildSignableTransaction.js.map +0 -1
- package/mobile/out/src/signer/methods/completeSignedTransaction.d.ts +0 -10
- package/mobile/out/src/signer/methods/completeSignedTransaction.d.ts.map +0 -1
- package/mobile/out/src/signer/methods/completeSignedTransaction.js +0 -106
- package/mobile/out/src/signer/methods/completeSignedTransaction.js.map +0 -1
- package/mobile/out/src/signer/methods/createAction.d.ts +0 -14
- package/mobile/out/src/signer/methods/createAction.d.ts.map +0 -1
- package/mobile/out/src/signer/methods/createAction.js +0 -117
- package/mobile/out/src/signer/methods/createAction.js.map +0 -1
- package/mobile/out/src/signer/methods/internalizeAction.d.ts +0 -32
- package/mobile/out/src/signer/methods/internalizeAction.d.ts.map +0 -1
- package/mobile/out/src/signer/methods/internalizeAction.js +0 -93
- package/mobile/out/src/signer/methods/internalizeAction.js.map +0 -1
- package/mobile/out/src/signer/methods/proveCertificate.d.ts +0 -5
- package/mobile/out/src/signer/methods/proveCertificate.d.ts.map +0 -1
- package/mobile/out/src/signer/methods/proveCertificate.js +0 -29
- package/mobile/out/src/signer/methods/proveCertificate.js.map +0 -1
- package/mobile/out/src/signer/methods/signAction.d.ts +0 -11
- package/mobile/out/src/signer/methods/signAction.d.ts.map +0 -1
- package/mobile/out/src/signer/methods/signAction.js +0 -41
- package/mobile/out/src/signer/methods/signAction.js.map +0 -1
- package/mobile/out/src/storage/StorageIdb.d.ts +0 -210
- package/mobile/out/src/storage/StorageIdb.d.ts.map +0 -1
- package/mobile/out/src/storage/StorageIdb.js +0 -2297
- package/mobile/out/src/storage/StorageIdb.js.map +0 -1
- package/mobile/out/src/storage/StorageProvider.d.ts +0 -222
- package/mobile/out/src/storage/StorageProvider.d.ts.map +0 -1
- package/mobile/out/src/storage/StorageProvider.js +0 -567
- package/mobile/out/src/storage/StorageProvider.js.map +0 -1
- package/mobile/out/src/storage/StorageReader.d.ts +0 -77
- package/mobile/out/src/storage/StorageReader.d.ts.map +0 -1
- package/mobile/out/src/storage/StorageReader.js +0 -163
- package/mobile/out/src/storage/StorageReader.js.map +0 -1
- package/mobile/out/src/storage/StorageReaderWriter.d.ts +0 -102
- package/mobile/out/src/storage/StorageReaderWriter.d.ts.map +0 -1
- package/mobile/out/src/storage/StorageReaderWriter.js +0 -338
- package/mobile/out/src/storage/StorageReaderWriter.js.map +0 -1
- package/mobile/out/src/storage/StorageSyncReader.d.ts +0 -18
- package/mobile/out/src/storage/StorageSyncReader.d.ts.map +0 -1
- package/mobile/out/src/storage/StorageSyncReader.js +0 -71
- package/mobile/out/src/storage/StorageSyncReader.js.map +0 -1
- package/mobile/out/src/storage/WalletStorageManager.d.ts +0 -221
- package/mobile/out/src/storage/WalletStorageManager.d.ts.map +0 -1
- package/mobile/out/src/storage/WalletStorageManager.js +0 -819
- package/mobile/out/src/storage/WalletStorageManager.js.map +0 -1
- package/mobile/out/src/storage/index.client.d.ts +0 -8
- package/mobile/out/src/storage/index.client.d.ts.map +0 -1
- package/mobile/out/src/storage/index.client.js +0 -24
- package/mobile/out/src/storage/index.client.js.map +0 -1
- package/mobile/out/src/storage/index.mobile.d.ts +0 -7
- package/mobile/out/src/storage/index.mobile.d.ts.map +0 -1
- package/mobile/out/src/storage/index.mobile.js +0 -23
- package/mobile/out/src/storage/index.mobile.js.map +0 -1
- package/mobile/out/src/storage/methods/ListActionsSpecOp.d.ts +0 -18
- package/mobile/out/src/storage/methods/ListActionsSpecOp.d.ts.map +0 -1
- package/mobile/out/src/storage/methods/ListActionsSpecOp.js +0 -40
- package/mobile/out/src/storage/methods/ListActionsSpecOp.js.map +0 -1
- package/mobile/out/src/storage/methods/ListOutputsSpecOp.d.ts +0 -26
- package/mobile/out/src/storage/methods/ListOutputsSpecOp.d.ts.map +0 -1
- package/mobile/out/src/storage/methods/ListOutputsSpecOp.js +0 -75
- package/mobile/out/src/storage/methods/ListOutputsSpecOp.js.map +0 -1
- package/mobile/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts +0 -41
- package/mobile/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts.map +0 -1
- package/mobile/out/src/storage/methods/attemptToPostReqsToNetwork.js +0 -324
- package/mobile/out/src/storage/methods/attemptToPostReqsToNetwork.js.map +0 -1
- package/mobile/out/src/storage/methods/createAction.d.ts +0 -13
- package/mobile/out/src/storage/methods/createAction.d.ts.map +0 -1
- package/mobile/out/src/storage/methods/createAction.js +0 -732
- package/mobile/out/src/storage/methods/createAction.js.map +0 -1
- package/mobile/out/src/storage/methods/generateChange.d.ts +0 -96
- package/mobile/out/src/storage/methods/generateChange.d.ts.map +0 -1
- package/mobile/out/src/storage/methods/generateChange.js +0 -405
- package/mobile/out/src/storage/methods/generateChange.js.map +0 -1
- package/mobile/out/src/storage/methods/getBeefForTransaction.d.ts +0 -23
- package/mobile/out/src/storage/methods/getBeefForTransaction.d.ts.map +0 -1
- package/mobile/out/src/storage/methods/getBeefForTransaction.js +0 -109
- package/mobile/out/src/storage/methods/getBeefForTransaction.js.map +0 -1
- package/mobile/out/src/storage/methods/getSyncChunk.d.ts +0 -10
- package/mobile/out/src/storage/methods/getSyncChunk.d.ts.map +0 -1
- package/mobile/out/src/storage/methods/getSyncChunk.js +0 -272
- package/mobile/out/src/storage/methods/getSyncChunk.js.map +0 -1
- package/mobile/out/src/storage/methods/internalizeAction.d.ts +0 -31
- package/mobile/out/src/storage/methods/internalizeAction.d.ts.map +0 -1
- package/mobile/out/src/storage/methods/internalizeAction.js +0 -462
- package/mobile/out/src/storage/methods/internalizeAction.js.map +0 -1
- package/mobile/out/src/storage/methods/listActionsIdb.d.ts +0 -5
- package/mobile/out/src/storage/methods/listActionsIdb.d.ts.map +0 -1
- package/mobile/out/src/storage/methods/listActionsIdb.js +0 -155
- package/mobile/out/src/storage/methods/listActionsIdb.js.map +0 -1
- package/mobile/out/src/storage/methods/listCertificates.d.ts +0 -5
- package/mobile/out/src/storage/methods/listCertificates.d.ts.map +0 -1
- package/mobile/out/src/storage/methods/listCertificates.js +0 -68
- package/mobile/out/src/storage/methods/listCertificates.js.map +0 -1
- package/mobile/out/src/storage/methods/listOutputsIdb.d.ts +0 -5
- package/mobile/out/src/storage/methods/listOutputsIdb.d.ts.map +0 -1
- package/mobile/out/src/storage/methods/listOutputsIdb.js +0 -185
- package/mobile/out/src/storage/methods/listOutputsIdb.js.map +0 -1
- package/mobile/out/src/storage/methods/offsetKey.d.ts +0 -24
- package/mobile/out/src/storage/methods/offsetKey.d.ts.map +0 -1
- package/mobile/out/src/storage/methods/offsetKey.js +0 -67
- package/mobile/out/src/storage/methods/offsetKey.js.map +0 -1
- package/mobile/out/src/storage/methods/processAction.d.ts +0 -54
- package/mobile/out/src/storage/methods/processAction.d.ts.map +0 -1
- package/mobile/out/src/storage/methods/processAction.js +0 -267
- package/mobile/out/src/storage/methods/processAction.js.map +0 -1
- package/mobile/out/src/storage/methods/purgeDataIdb.d.ts +0 -4
- package/mobile/out/src/storage/methods/purgeDataIdb.d.ts.map +0 -1
- package/mobile/out/src/storage/methods/purgeDataIdb.js +0 -9
- package/mobile/out/src/storage/methods/purgeDataIdb.js.map +0 -1
- package/mobile/out/src/storage/methods/reviewStatusIdb.d.ts +0 -20
- package/mobile/out/src/storage/methods/reviewStatusIdb.d.ts.map +0 -1
- package/mobile/out/src/storage/methods/reviewStatusIdb.js +0 -35
- package/mobile/out/src/storage/methods/reviewStatusIdb.js.map +0 -1
- package/mobile/out/src/storage/methods/utils.d.ts +0 -25
- package/mobile/out/src/storage/methods/utils.d.ts.map +0 -1
- package/mobile/out/src/storage/methods/utils.js +0 -53
- package/mobile/out/src/storage/methods/utils.js.map +0 -1
- package/mobile/out/src/storage/remoting/StorageClient.d.ts +0 -292
- package/mobile/out/src/storage/remoting/StorageClient.d.ts.map +0 -1
- package/mobile/out/src/storage/remoting/StorageClient.js +0 -497
- package/mobile/out/src/storage/remoting/StorageClient.js.map +0 -1
- package/mobile/out/src/storage/remoting/StorageMobile.d.ts +0 -292
- package/mobile/out/src/storage/remoting/StorageMobile.d.ts.map +0 -1
- package/mobile/out/src/storage/remoting/StorageMobile.js +0 -477
- package/mobile/out/src/storage/remoting/StorageMobile.js.map +0 -1
- package/mobile/out/src/storage/schema/StorageIdbSchema.d.ts +0 -133
- package/mobile/out/src/storage/schema/StorageIdbSchema.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/StorageIdbSchema.js +0 -3
- package/mobile/out/src/storage/schema/StorageIdbSchema.js.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityBase.d.ts +0 -106
- package/mobile/out/src/storage/schema/entities/EntityBase.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityBase.js +0 -100
- package/mobile/out/src/storage/schema/entities/EntityBase.js.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityCertificate.d.ts +0 -44
- package/mobile/out/src/storage/schema/entities/EntityCertificate.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityCertificate.js +0 -162
- package/mobile/out/src/storage/schema/entities/EntityCertificate.js.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityCertificateField.d.ts +0 -33
- package/mobile/out/src/storage/schema/entities/EntityCertificateField.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityCertificateField.js +0 -112
- package/mobile/out/src/storage/schema/entities/EntityCertificateField.js.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityCommission.d.ts +0 -38
- package/mobile/out/src/storage/schema/entities/EntityCommission.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityCommission.js +0 -127
- package/mobile/out/src/storage/schema/entities/EntityCommission.js.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityOutput.d.ts +0 -68
- package/mobile/out/src/storage/schema/entities/EntityOutput.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityOutput.js +0 -264
- package/mobile/out/src/storage/schema/entities/EntityOutput.js.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityOutputBasket.d.ts +0 -36
- package/mobile/out/src/storage/schema/entities/EntityOutputBasket.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityOutputBasket.js +0 -133
- package/mobile/out/src/storage/schema/entities/EntityOutputBasket.js.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityOutputTag.d.ts +0 -32
- package/mobile/out/src/storage/schema/entities/EntityOutputTag.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityOutputTag.js +0 -104
- package/mobile/out/src/storage/schema/entities/EntityOutputTag.js.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityOutputTagMap.d.ts +0 -29
- package/mobile/out/src/storage/schema/entities/EntityOutputTagMap.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityOutputTagMap.js +0 -98
- package/mobile/out/src/storage/schema/entities/EntityOutputTagMap.js.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityProvenTx.d.ts +0 -87
- package/mobile/out/src/storage/schema/entities/EntityProvenTx.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityProvenTx.js +0 -278
- package/mobile/out/src/storage/schema/entities/EntityProvenTx.js.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityProvenTxReq.d.ts +0 -139
- package/mobile/out/src/storage/schema/entities/EntityProvenTxReq.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityProvenTxReq.js +0 -524
- package/mobile/out/src/storage/schema/entities/EntityProvenTxReq.js.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntitySyncState.d.ts +0 -69
- package/mobile/out/src/storage/schema/entities/EntitySyncState.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntitySyncState.js +0 -334
- package/mobile/out/src/storage/schema/entities/EntitySyncState.js.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityTransaction.d.ts +0 -71
- package/mobile/out/src/storage/schema/entities/EntityTransaction.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityTransaction.js +0 -255
- package/mobile/out/src/storage/schema/entities/EntityTransaction.js.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityTxLabel.d.ts +0 -32
- package/mobile/out/src/storage/schema/entities/EntityTxLabel.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityTxLabel.js +0 -104
- package/mobile/out/src/storage/schema/entities/EntityTxLabel.js.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityTxLabelMap.d.ts +0 -29
- package/mobile/out/src/storage/schema/entities/EntityTxLabelMap.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityTxLabelMap.js +0 -98
- package/mobile/out/src/storage/schema/entities/EntityTxLabelMap.js.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityUser.d.ts +0 -30
- package/mobile/out/src/storage/schema/entities/EntityUser.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/entities/EntityUser.js +0 -99
- package/mobile/out/src/storage/schema/entities/EntityUser.js.map +0 -1
- package/mobile/out/src/storage/schema/entities/MergeEntity.d.ts +0 -34
- package/mobile/out/src/storage/schema/entities/MergeEntity.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/entities/MergeEntity.js +0 -63
- package/mobile/out/src/storage/schema/entities/MergeEntity.js.map +0 -1
- package/mobile/out/src/storage/schema/entities/index.d.ts +0 -17
- package/mobile/out/src/storage/schema/entities/index.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/entities/index.js +0 -33
- package/mobile/out/src/storage/schema/entities/index.js.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableCertificate.d.ts +0 -20
- package/mobile/out/src/storage/schema/tables/TableCertificate.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableCertificate.js +0 -3
- package/mobile/out/src/storage/schema/tables/TableCertificate.js.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableCertificateField.d.ts +0 -12
- package/mobile/out/src/storage/schema/tables/TableCertificateField.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableCertificateField.js +0 -3
- package/mobile/out/src/storage/schema/tables/TableCertificateField.js.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableCommission.d.ts +0 -13
- package/mobile/out/src/storage/schema/tables/TableCommission.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableCommission.js +0 -3
- package/mobile/out/src/storage/schema/tables/TableCommission.js.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableMonitorEvent.d.ts +0 -9
- package/mobile/out/src/storage/schema/tables/TableMonitorEvent.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableMonitorEvent.js +0 -3
- package/mobile/out/src/storage/schema/tables/TableMonitorEvent.js.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableOutput.d.ts +0 -36
- package/mobile/out/src/storage/schema/tables/TableOutput.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableOutput.js +0 -31
- package/mobile/out/src/storage/schema/tables/TableOutput.js.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableOutputBasket.d.ts +0 -12
- package/mobile/out/src/storage/schema/tables/TableOutputBasket.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableOutputBasket.js +0 -3
- package/mobile/out/src/storage/schema/tables/TableOutputBasket.js.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableOutputTag.d.ts +0 -10
- package/mobile/out/src/storage/schema/tables/TableOutputTag.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableOutputTag.js +0 -3
- package/mobile/out/src/storage/schema/tables/TableOutputTag.js.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableOutputTagMap.d.ts +0 -9
- package/mobile/out/src/storage/schema/tables/TableOutputTagMap.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableOutputTagMap.js +0 -3
- package/mobile/out/src/storage/schema/tables/TableOutputTagMap.js.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableProvenTx.d.ts +0 -14
- package/mobile/out/src/storage/schema/tables/TableProvenTx.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableProvenTx.js +0 -3
- package/mobile/out/src/storage/schema/tables/TableProvenTx.js.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableProvenTxReq.d.ts +0 -64
- package/mobile/out/src/storage/schema/tables/TableProvenTxReq.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableProvenTxReq.js +0 -3
- package/mobile/out/src/storage/schema/tables/TableProvenTxReq.js.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableSettings.d.ts +0 -17
- package/mobile/out/src/storage/schema/tables/TableSettings.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableSettings.js +0 -3
- package/mobile/out/src/storage/schema/tables/TableSettings.js.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableSyncState.d.ts +0 -18
- package/mobile/out/src/storage/schema/tables/TableSyncState.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableSyncState.js +0 -3
- package/mobile/out/src/storage/schema/tables/TableSyncState.js.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableTransaction.d.ts +0 -37
- package/mobile/out/src/storage/schema/tables/TableTransaction.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableTransaction.js +0 -21
- package/mobile/out/src/storage/schema/tables/TableTransaction.js.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableTxLabel.d.ts +0 -10
- package/mobile/out/src/storage/schema/tables/TableTxLabel.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableTxLabel.js +0 -3
- package/mobile/out/src/storage/schema/tables/TableTxLabel.js.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableTxLabelMap.d.ts +0 -9
- package/mobile/out/src/storage/schema/tables/TableTxLabelMap.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableTxLabelMap.js +0 -3
- package/mobile/out/src/storage/schema/tables/TableTxLabelMap.js.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableUser.d.ts +0 -16
- package/mobile/out/src/storage/schema/tables/TableUser.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/tables/TableUser.js +0 -3
- package/mobile/out/src/storage/schema/tables/TableUser.js.map +0 -1
- package/mobile/out/src/storage/schema/tables/index.d.ts +0 -17
- package/mobile/out/src/storage/schema/tables/index.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/tables/index.js +0 -33
- package/mobile/out/src/storage/schema/tables/index.js.map +0 -1
- package/mobile/out/src/utility/ReaderUint8Array.d.ts +0 -28
- package/mobile/out/src/utility/ReaderUint8Array.d.ts.map +0 -1
- package/mobile/out/src/utility/ReaderUint8Array.js +0 -166
- package/mobile/out/src/utility/ReaderUint8Array.js.map +0 -1
- package/mobile/out/src/utility/ScriptTemplateBRC29.d.ts +0 -25
- package/mobile/out/src/utility/ScriptTemplateBRC29.d.ts.map +0 -1
- package/mobile/out/src/utility/ScriptTemplateBRC29.js +0 -48
- package/mobile/out/src/utility/ScriptTemplateBRC29.js.map +0 -1
- package/mobile/out/src/utility/aggregateResults.d.ts +0 -8
- package/mobile/out/src/utility/aggregateResults.d.ts.map +0 -1
- package/mobile/out/src/utility/aggregateResults.js +0 -59
- package/mobile/out/src/utility/aggregateResults.js.map +0 -1
- package/mobile/out/src/utility/identityUtils.d.ts +0 -31
- package/mobile/out/src/utility/identityUtils.d.ts.map +0 -1
- package/mobile/out/src/utility/identityUtils.js +0 -116
- package/mobile/out/src/utility/identityUtils.js.map +0 -1
- package/mobile/out/src/utility/index.client.d.ts +0 -7
- package/mobile/out/src/utility/index.client.d.ts.map +0 -1
- package/mobile/out/src/utility/index.client.js +0 -23
- package/mobile/out/src/utility/index.client.js.map +0 -1
- package/mobile/out/src/utility/parseTxScriptOffsets.d.ts +0 -14
- package/mobile/out/src/utility/parseTxScriptOffsets.d.ts.map +0 -1
- package/mobile/out/src/utility/parseTxScriptOffsets.js +0 -26
- package/mobile/out/src/utility/parseTxScriptOffsets.js.map +0 -1
- package/mobile/out/src/utility/stampLog.d.ts +0 -18
- package/mobile/out/src/utility/stampLog.d.ts.map +0 -1
- package/mobile/out/src/utility/stampLog.js +0 -72
- package/mobile/out/src/utility/stampLog.js.map +0 -1
- package/mobile/out/src/utility/tscProofToMerklePath.d.ts +0 -8
- package/mobile/out/src/utility/tscProofToMerklePath.d.ts.map +0 -1
- package/mobile/out/src/utility/tscProofToMerklePath.js +0 -41
- package/mobile/out/src/utility/tscProofToMerklePath.js.map +0 -1
- package/mobile/out/src/utility/utilityHelpers.d.ts +0 -138
- package/mobile/out/src/utility/utilityHelpers.d.ts.map +0 -1
- package/mobile/out/src/utility/utilityHelpers.js +0 -294
- package/mobile/out/src/utility/utilityHelpers.js.map +0 -1
- package/mobile/out/src/utility/utilityHelpers.noBuffer.d.ts +0 -26
- package/mobile/out/src/utility/utilityHelpers.noBuffer.d.ts.map +0 -1
- package/mobile/out/src/utility/utilityHelpers.noBuffer.js +0 -64
- package/mobile/out/src/utility/utilityHelpers.noBuffer.js.map +0 -1
- package/mobile/out/src/wab-client/WABClient.d.ts +0 -49
- package/mobile/out/src/wab-client/WABClient.d.ts.map +0 -1
- package/mobile/out/src/wab-client/WABClient.js +0 -80
- package/mobile/out/src/wab-client/WABClient.js.map +0 -1
- package/mobile/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.d.ts +0 -34
- package/mobile/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.d.ts.map +0 -1
- package/mobile/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.js +0 -16
- package/mobile/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.js.map +0 -1
- package/mobile/out/src/wab-client/auth-method-interactors/DevConsoleInteractor.d.ts +0 -29
- package/mobile/out/src/wab-client/auth-method-interactors/DevConsoleInteractor.d.ts.map +0 -1
- package/mobile/out/src/wab-client/auth-method-interactors/DevConsoleInteractor.js +0 -70
- package/mobile/out/src/wab-client/auth-method-interactors/DevConsoleInteractor.js.map +0 -1
- package/mobile/out/src/wab-client/auth-method-interactors/PersonaIDInteractor.d.ts +0 -7
- package/mobile/out/src/wab-client/auth-method-interactors/PersonaIDInteractor.d.ts.map +0 -1
- package/mobile/out/src/wab-client/auth-method-interactors/PersonaIDInteractor.js +0 -36
- package/mobile/out/src/wab-client/auth-method-interactors/PersonaIDInteractor.js.map +0 -1
- package/mobile/out/src/wab-client/auth-method-interactors/TwilioPhoneInteractor.d.ts +0 -28
- package/mobile/out/src/wab-client/auth-method-interactors/TwilioPhoneInteractor.d.ts.map +0 -1
- package/mobile/out/src/wab-client/auth-method-interactors/TwilioPhoneInteractor.js +0 -69
- package/mobile/out/src/wab-client/auth-method-interactors/TwilioPhoneInteractor.js.map +0 -1
- package/mobile/out/tsconfig.mobile.tsbuildinfo +0 -1
- package/mobile/package-lock.json +0 -22
- package/mobile/package.json +0 -25
|
@@ -1,2679 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.WalletPermissionsManager = void 0;
|
|
4
|
-
const sdk_1 = require("@bsv/sdk");
|
|
5
|
-
////// TODO: ADD SUPPORT FOR ADMIN COUNTERPARTIES BASED ON WALLET STORAGE
|
|
6
|
-
////// PROHIBITION OF SPECIAL OPERATIONS IS ALSO CRITICAL.
|
|
7
|
-
////// !!!!!!!! SECURITY-CRITICAL ADDITION — DO NOT USE UNTIL IMPLEMENTED.
|
|
8
|
-
function deepEqual(object1, object2) {
|
|
9
|
-
if (object1 === null || object1 === undefined || object2 === null || object2 === undefined) {
|
|
10
|
-
return object1 === object2;
|
|
11
|
-
}
|
|
12
|
-
const keys1 = Object.keys(object1);
|
|
13
|
-
const keys2 = Object.keys(object2);
|
|
14
|
-
if (keys1.length !== keys2.length) {
|
|
15
|
-
return false;
|
|
16
|
-
}
|
|
17
|
-
for (const key of keys1) {
|
|
18
|
-
const val1 = object1[key];
|
|
19
|
-
const val2 = object2[key];
|
|
20
|
-
const areObjects = isObject(val1) && isObject(val2);
|
|
21
|
-
if ((areObjects && !deepEqual(val1, val2)) || (!areObjects && val1 !== val2)) {
|
|
22
|
-
return false;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
return true;
|
|
26
|
-
}
|
|
27
|
-
function isObject(object) {
|
|
28
|
-
return object != null && typeof object === 'object';
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* A map from each permission type to a special "admin basket" name used for storing
|
|
32
|
-
* the tokens. The tokens themselves are unspent transaction outputs (UTXOs) with a
|
|
33
|
-
* specialized PushDrop script that references the originator, expiry, etc.
|
|
34
|
-
*/
|
|
35
|
-
const BASKET_MAP = {
|
|
36
|
-
protocol: 'admin protocol-permission',
|
|
37
|
-
basket: 'admin basket-access',
|
|
38
|
-
certificate: 'admin certificate-access',
|
|
39
|
-
spending: 'admin spending-authorization'
|
|
40
|
-
};
|
|
41
|
-
/**
|
|
42
|
-
* @class WalletPermissionsManager
|
|
43
|
-
*
|
|
44
|
-
* Wraps an underlying BRC-100 `Wallet` implementation with permissions management capabilities.
|
|
45
|
-
* The manager intercepts calls from external applications (identified by originators), checks if the request is allowed,
|
|
46
|
-
* and if not, orchestrates user permission flows. It creates or renews on-chain tokens in special
|
|
47
|
-
* admin baskets to track these authorizations. Finally, it proxies the actual call to the underlying wallet.
|
|
48
|
-
*
|
|
49
|
-
* ### Key Responsibilities:
|
|
50
|
-
* - **Permission Checking**: Before standard wallet operations (e.g. `encrypt`),
|
|
51
|
-
* the manager checks if a valid permission token exists. If not, it attempts to request permission from the user.
|
|
52
|
-
* - **On-Chain Tokens**: When permission is granted, the manager stores it as an unspent "PushDrop" output.
|
|
53
|
-
* This can be spent later to revoke or renew the permission.
|
|
54
|
-
* - **Callbacks**: The manager triggers user-defined callbacks on permission requests (to show a UI prompt),
|
|
55
|
-
* on grants/denials, and on internal processes.
|
|
56
|
-
*
|
|
57
|
-
* ### Implementation Notes:
|
|
58
|
-
* - The manager follows the BRC-100 `createAction` + `signAction` pattern for building or spending these tokens.
|
|
59
|
-
* - Token revocation or renewal uses standard BRC-100 flows: we build a transaction that consumes
|
|
60
|
-
* the old token UTXO and outputs a new one (or none, if fully revoked).
|
|
61
|
-
*/
|
|
62
|
-
class WalletPermissionsManager {
|
|
63
|
-
/**
|
|
64
|
-
* Constructs a new Permissions Manager instance.
|
|
65
|
-
*
|
|
66
|
-
* @param underlyingWallet The underlying BRC-100 wallet, where requests are forwarded after permission is granted
|
|
67
|
-
* @param adminOriginator The domain or FQDN that is automatically allowed everything
|
|
68
|
-
* @param config A set of boolean flags controlling how strictly permissions are enforced
|
|
69
|
-
*/
|
|
70
|
-
constructor(underlyingWallet, adminOriginator, config = {}) {
|
|
71
|
-
/**
|
|
72
|
-
* Event callbacks that external code can subscribe to, e.g. to show a UI prompt
|
|
73
|
-
* or log events. Each event can have multiple handlers.
|
|
74
|
-
*/
|
|
75
|
-
this.callbacks = {
|
|
76
|
-
onProtocolPermissionRequested: [],
|
|
77
|
-
onBasketAccessRequested: [],
|
|
78
|
-
onCertificateAccessRequested: [],
|
|
79
|
-
onSpendingAuthorizationRequested: [],
|
|
80
|
-
onGroupedPermissionRequested: []
|
|
81
|
-
};
|
|
82
|
-
/**
|
|
83
|
-
* We queue parallel requests for the same resource so that only one
|
|
84
|
-
* user prompt is created for a single resource. If multiple calls come
|
|
85
|
-
* in at once for the same "protocol:domain:privileged:counterparty" etc.,
|
|
86
|
-
* they get merged.
|
|
87
|
-
*
|
|
88
|
-
* The key is a string derived from the operation; the value is an object with a reference to the
|
|
89
|
-
* associated request and an array of pending promise resolve/reject pairs, one for each active
|
|
90
|
-
* operation that's waiting on the particular resource described by the key.
|
|
91
|
-
*/
|
|
92
|
-
this.activeRequests = new Map();
|
|
93
|
-
/** Cache recently confirmed permissions to avoid repeated lookups. */
|
|
94
|
-
this.permissionCache = new Map();
|
|
95
|
-
this.recentGrants = new Map();
|
|
96
|
-
this.underlying = underlyingWallet;
|
|
97
|
-
this.adminOriginator = this.normalizeOriginator(adminOriginator) || adminOriginator;
|
|
98
|
-
// Default all config options to true unless specified
|
|
99
|
-
this.config = {
|
|
100
|
-
seekProtocolPermissionsForSigning: true,
|
|
101
|
-
seekProtocolPermissionsForEncrypting: true,
|
|
102
|
-
seekProtocolPermissionsForHMAC: true,
|
|
103
|
-
seekPermissionsForKeyLinkageRevelation: true,
|
|
104
|
-
seekPermissionsForPublicKeyRevelation: true,
|
|
105
|
-
seekPermissionsForIdentityKeyRevelation: true,
|
|
106
|
-
seekPermissionsForIdentityResolution: true,
|
|
107
|
-
seekBasketInsertionPermissions: true,
|
|
108
|
-
seekBasketRemovalPermissions: true,
|
|
109
|
-
seekBasketListingPermissions: true,
|
|
110
|
-
seekPermissionWhenApplyingActionLabels: true,
|
|
111
|
-
seekPermissionWhenListingActionsByLabel: true,
|
|
112
|
-
seekCertificateDisclosurePermissions: true,
|
|
113
|
-
seekCertificateAcquisitionPermissions: true,
|
|
114
|
-
seekCertificateRelinquishmentPermissions: true,
|
|
115
|
-
seekCertificateListingPermissions: true,
|
|
116
|
-
encryptWalletMetadata: true,
|
|
117
|
-
seekSpendingPermissions: true,
|
|
118
|
-
seekGroupedPermission: true,
|
|
119
|
-
differentiatePrivilegedOperations: true,
|
|
120
|
-
...config // override with user-specified config
|
|
121
|
-
};
|
|
122
|
-
}
|
|
123
|
-
/* ---------------------------------------------------------------------
|
|
124
|
-
* HELPER METHODS FOR P-MODULE DELEGATION
|
|
125
|
-
* --------------------------------------------------------------------- */
|
|
126
|
-
/**
|
|
127
|
-
* Delegates a wallet method call to a P-module if the basket or protocol name uses a P-scheme.
|
|
128
|
-
* Handles the full request/response transformation flow.
|
|
129
|
-
*
|
|
130
|
-
* @param basketOrProtocolName - The basket or protocol name to check for p-module delegation
|
|
131
|
-
* @param method - The wallet method name being called
|
|
132
|
-
* @param args - The original args passed to the method
|
|
133
|
-
* @param originator - The originator of the request
|
|
134
|
-
* @param underlyingCall - Callback that executes the underlying wallet method with transformed args
|
|
135
|
-
* @returns The transformed response, or null if not a P-basket/protocol (caller should continue normal flow)
|
|
136
|
-
*/
|
|
137
|
-
async delegateToPModuleIfNeeded(basketOrProtocolName, method, args, originator, underlyingCall) {
|
|
138
|
-
var _a;
|
|
139
|
-
// Check if this is a P-protocol/basket
|
|
140
|
-
if (!basketOrProtocolName.startsWith('p ')) {
|
|
141
|
-
return null; // If not, caller should continue normal flow
|
|
142
|
-
}
|
|
143
|
-
const schemeID = basketOrProtocolName.split(' ')[1];
|
|
144
|
-
const module = (_a = this.config.permissionModules) === null || _a === void 0 ? void 0 : _a[schemeID];
|
|
145
|
-
if (!module) {
|
|
146
|
-
throw new Error(`Unsupported P-module scheme: p ${schemeID}`);
|
|
147
|
-
}
|
|
148
|
-
// Transform request with module
|
|
149
|
-
const transformedReq = await module.onRequest({
|
|
150
|
-
method,
|
|
151
|
-
args,
|
|
152
|
-
originator
|
|
153
|
-
});
|
|
154
|
-
// Call underlying method with transformed request
|
|
155
|
-
const results = await underlyingCall(transformedReq.args, originator);
|
|
156
|
-
// Transform response with module
|
|
157
|
-
return await module.onResponse(results, {
|
|
158
|
-
method,
|
|
159
|
-
originator
|
|
160
|
-
});
|
|
161
|
-
}
|
|
162
|
-
/**
|
|
163
|
-
* Decrypts custom instructions in listOutputs results if encryption is configured.
|
|
164
|
-
*/
|
|
165
|
-
async decryptListOutputsMetadata(results) {
|
|
166
|
-
if (results.outputs) {
|
|
167
|
-
for (let i = 0; i < results.outputs.length; i++) {
|
|
168
|
-
if (results.outputs[i].customInstructions) {
|
|
169
|
-
results.outputs[i].customInstructions = await this.maybeDecryptMetadata(results.outputs[i].customInstructions);
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
return results;
|
|
174
|
-
}
|
|
175
|
-
/* ---------------------------------------------------------------------
|
|
176
|
-
* 1) PUBLIC API FOR REGISTERING CALLBACKS (UI PROMPTS, LOGGING, ETC.)
|
|
177
|
-
* --------------------------------------------------------------------- */
|
|
178
|
-
/**
|
|
179
|
-
* Binds a callback function to a named event, such as `onProtocolPermissionRequested`.
|
|
180
|
-
*
|
|
181
|
-
* @param eventName The name of the event to listen to
|
|
182
|
-
* @param handler A function that handles the event
|
|
183
|
-
* @returns A numeric ID you can use to unbind later
|
|
184
|
-
*/
|
|
185
|
-
bindCallback(eventName, handler) {
|
|
186
|
-
const arr = this.callbacks[eventName];
|
|
187
|
-
arr.push(handler);
|
|
188
|
-
return arr.length - 1;
|
|
189
|
-
}
|
|
190
|
-
/**
|
|
191
|
-
* Unbinds a previously registered callback by either its numeric ID (returned by `bindCallback`)
|
|
192
|
-
* or by exact function reference.
|
|
193
|
-
*
|
|
194
|
-
* @param eventName The event name, e.g. "onProtocolPermissionRequested"
|
|
195
|
-
* @param reference Either the numeric ID or the function reference
|
|
196
|
-
* @returns True if successfully unbound, false otherwise
|
|
197
|
-
*/
|
|
198
|
-
unbindCallback(eventName, reference) {
|
|
199
|
-
if (!this.callbacks[eventName])
|
|
200
|
-
return false;
|
|
201
|
-
const arr = this.callbacks[eventName];
|
|
202
|
-
if (typeof reference === 'number') {
|
|
203
|
-
if (arr[reference]) {
|
|
204
|
-
arr[reference] = null;
|
|
205
|
-
return true;
|
|
206
|
-
}
|
|
207
|
-
return false;
|
|
208
|
-
}
|
|
209
|
-
else {
|
|
210
|
-
const index = arr.indexOf(reference);
|
|
211
|
-
if (index !== -1) {
|
|
212
|
-
arr[index] = null;
|
|
213
|
-
return true;
|
|
214
|
-
}
|
|
215
|
-
return false;
|
|
216
|
-
}
|
|
217
|
-
}
|
|
218
|
-
/**
|
|
219
|
-
* Internally triggers a named event, calling all subscribed listeners.
|
|
220
|
-
* Each callback is awaited in turn (though errors are swallowed so that
|
|
221
|
-
* one failing callback doesn't prevent the others).
|
|
222
|
-
*
|
|
223
|
-
* @param eventName The event name
|
|
224
|
-
* @param param The parameter object passed to all listeners
|
|
225
|
-
*/
|
|
226
|
-
async callEvent(eventName, param) {
|
|
227
|
-
const arr = this.callbacks[eventName] || [];
|
|
228
|
-
for (const cb of arr) {
|
|
229
|
-
if (typeof cb === 'function') {
|
|
230
|
-
try {
|
|
231
|
-
await cb(param);
|
|
232
|
-
}
|
|
233
|
-
catch (e) {
|
|
234
|
-
// Intentionally swallow errors from user-provided callbacks
|
|
235
|
-
}
|
|
236
|
-
}
|
|
237
|
-
}
|
|
238
|
-
}
|
|
239
|
-
/* ---------------------------------------------------------------------
|
|
240
|
-
* 2) PERMISSION (GRANT / DENY) METHODS
|
|
241
|
-
* --------------------------------------------------------------------- */
|
|
242
|
-
/**
|
|
243
|
-
* Grants a previously requested permission.
|
|
244
|
-
* This method:
|
|
245
|
-
* 1) Resolves all pending promise calls waiting on this request
|
|
246
|
-
* 2) Optionally creates or renews an on-chain PushDrop token (unless `ephemeral===true`)
|
|
247
|
-
*
|
|
248
|
-
* @param params requestID to identify which request is granted, plus optional expiry
|
|
249
|
-
* or `ephemeral` usage, etc.
|
|
250
|
-
*/
|
|
251
|
-
async grantPermission(params) {
|
|
252
|
-
// 1) Identify the matching queued requests in `activeRequests`
|
|
253
|
-
const matching = this.activeRequests.get(params.requestID);
|
|
254
|
-
if (!matching) {
|
|
255
|
-
throw new Error('Request ID not found.');
|
|
256
|
-
}
|
|
257
|
-
// 2) Mark all matching requests as resolved, deleting the entry
|
|
258
|
-
for (const x of matching.pending) {
|
|
259
|
-
x.resolve(true);
|
|
260
|
-
}
|
|
261
|
-
this.activeRequests.delete(params.requestID);
|
|
262
|
-
// 3) If `ephemeral !== true`, we create or renew an on-chain token
|
|
263
|
-
if (!params.ephemeral) {
|
|
264
|
-
const request = matching.request;
|
|
265
|
-
if (!request.renewal) {
|
|
266
|
-
// brand-new permission token
|
|
267
|
-
await this.createPermissionOnChain(request, params.expiry || 0, // default: never expires
|
|
268
|
-
params.amount);
|
|
269
|
-
}
|
|
270
|
-
else {
|
|
271
|
-
// renewal => spend the old token, produce a new one
|
|
272
|
-
await this.renewPermissionOnChain(request.previousToken, request, params.expiry || 0, // default: never expires
|
|
273
|
-
params.amount);
|
|
274
|
-
}
|
|
275
|
-
}
|
|
276
|
-
// Only cache non-ephemeral permissions
|
|
277
|
-
// Ephemeral permissions should not be cached as they are one-time authorizations
|
|
278
|
-
if (!params.ephemeral) {
|
|
279
|
-
const expiry = params.expiry || 0; // default: never expires
|
|
280
|
-
const key = this.buildRequestKey(matching.request);
|
|
281
|
-
this.cachePermission(key, expiry);
|
|
282
|
-
this.markRecentGrant(matching.request);
|
|
283
|
-
}
|
|
284
|
-
}
|
|
285
|
-
/**
|
|
286
|
-
* Denies a previously requested permission.
|
|
287
|
-
* This method rejects all pending promise calls waiting on that request
|
|
288
|
-
*
|
|
289
|
-
* @param requestID requestID identifying which request to deny
|
|
290
|
-
*/
|
|
291
|
-
async denyPermission(requestID) {
|
|
292
|
-
// 1) Identify the matching requests
|
|
293
|
-
const matching = this.activeRequests.get(requestID);
|
|
294
|
-
if (!matching) {
|
|
295
|
-
throw new Error('Request ID not found.');
|
|
296
|
-
}
|
|
297
|
-
// 2) Reject all matching requests, deleting the entry
|
|
298
|
-
for (const x of matching.pending) {
|
|
299
|
-
x.reject(new Error('Permission denied.'));
|
|
300
|
-
}
|
|
301
|
-
this.activeRequests.delete(requestID);
|
|
302
|
-
}
|
|
303
|
-
/**
|
|
304
|
-
* Grants a previously requested grouped permission.
|
|
305
|
-
* @param params.requestID The ID of the request being granted.
|
|
306
|
-
* @param params.granted A subset of the originally requested permissions that the user has granted.
|
|
307
|
-
* @param params.expiry An optional expiry time (in seconds) for the new permission tokens.
|
|
308
|
-
*/
|
|
309
|
-
async grantGroupedPermission(params) {
|
|
310
|
-
var _a, _b, _c;
|
|
311
|
-
const matching = this.activeRequests.get(params.requestID);
|
|
312
|
-
if (!matching) {
|
|
313
|
-
throw new Error('Request ID not found.');
|
|
314
|
-
}
|
|
315
|
-
const originalRequest = matching.request;
|
|
316
|
-
const { originator, permissions: requestedPermissions, displayOriginator } = originalRequest;
|
|
317
|
-
const originLookupValues = this.buildOriginatorLookupValues(displayOriginator, originator);
|
|
318
|
-
// --- Validation: Ensure granted permissions are a subset of what was requested ---
|
|
319
|
-
if (params.granted.spendingAuthorization &&
|
|
320
|
-
!deepEqual(params.granted.spendingAuthorization, requestedPermissions.spendingAuthorization)) {
|
|
321
|
-
throw new Error('Granted spending authorization does not match the original request.');
|
|
322
|
-
}
|
|
323
|
-
if ((_a = params.granted.protocolPermissions) === null || _a === void 0 ? void 0 : _a.some(g => { var _a; return !((_a = requestedPermissions.protocolPermissions) === null || _a === void 0 ? void 0 : _a.find(r => deepEqual(r, g))); })) {
|
|
324
|
-
throw new Error('Granted protocol permissions are not a subset of the original request.');
|
|
325
|
-
}
|
|
326
|
-
if ((_b = params.granted.basketAccess) === null || _b === void 0 ? void 0 : _b.some(g => { var _a; return !((_a = requestedPermissions.basketAccess) === null || _a === void 0 ? void 0 : _a.find(r => deepEqual(r, g))); })) {
|
|
327
|
-
throw new Error('Granted basket access permissions are not a subset of the original request.');
|
|
328
|
-
}
|
|
329
|
-
if ((_c = params.granted.certificateAccess) === null || _c === void 0 ? void 0 : _c.some(g => { var _a; return !((_a = requestedPermissions.certificateAccess) === null || _a === void 0 ? void 0 : _a.find(r => deepEqual(r, g))); })) {
|
|
330
|
-
throw new Error('Granted certificate access permissions are not a subset of the original request.');
|
|
331
|
-
}
|
|
332
|
-
// --- End Validation ---
|
|
333
|
-
const expiry = params.expiry || 0; // default: never expires
|
|
334
|
-
if (params.granted.spendingAuthorization) {
|
|
335
|
-
await this.createPermissionOnChain({
|
|
336
|
-
type: 'spending',
|
|
337
|
-
originator,
|
|
338
|
-
spending: { satoshis: params.granted.spendingAuthorization.amount },
|
|
339
|
-
reason: params.granted.spendingAuthorization.description
|
|
340
|
-
}, 0, // No expiry for spending tokens
|
|
341
|
-
params.granted.spendingAuthorization.amount);
|
|
342
|
-
}
|
|
343
|
-
for (const p of params.granted.protocolPermissions || []) {
|
|
344
|
-
const token = await this.findProtocolToken(originator, false, // No privileged protocols allowed in groups for added security.
|
|
345
|
-
p.protocolID, p.counterparty || 'self', true, originLookupValues);
|
|
346
|
-
if (token) {
|
|
347
|
-
const request = {
|
|
348
|
-
type: 'protocol',
|
|
349
|
-
originator,
|
|
350
|
-
privileged: false, // No privileged protocols allowed in groups for added security.
|
|
351
|
-
protocolID: p.protocolID,
|
|
352
|
-
counterparty: p.counterparty || 'self',
|
|
353
|
-
reason: p.description
|
|
354
|
-
};
|
|
355
|
-
await this.renewPermissionOnChain(token, request, expiry);
|
|
356
|
-
this.markRecentGrant(request);
|
|
357
|
-
}
|
|
358
|
-
else {
|
|
359
|
-
const request = {
|
|
360
|
-
type: 'protocol',
|
|
361
|
-
originator,
|
|
362
|
-
privileged: false, // No privileged protocols allowed in groups for added security.
|
|
363
|
-
protocolID: p.protocolID,
|
|
364
|
-
counterparty: p.counterparty || 'self',
|
|
365
|
-
reason: p.description
|
|
366
|
-
};
|
|
367
|
-
await this.createPermissionOnChain(request, expiry);
|
|
368
|
-
this.markRecentGrant(request);
|
|
369
|
-
}
|
|
370
|
-
}
|
|
371
|
-
for (const b of params.granted.basketAccess || []) {
|
|
372
|
-
const request = { type: 'basket', originator, basket: b.basket, reason: b.description };
|
|
373
|
-
await this.createPermissionOnChain(request, expiry);
|
|
374
|
-
this.markRecentGrant(request);
|
|
375
|
-
}
|
|
376
|
-
for (const c of params.granted.certificateAccess || []) {
|
|
377
|
-
const request = {
|
|
378
|
-
type: 'certificate',
|
|
379
|
-
originator,
|
|
380
|
-
privileged: false, // No certificates on the privileged identity are allowed as part of groups.
|
|
381
|
-
certificate: {
|
|
382
|
-
verifier: c.verifierPublicKey,
|
|
383
|
-
certType: c.type,
|
|
384
|
-
fields: c.fields
|
|
385
|
-
},
|
|
386
|
-
reason: c.description
|
|
387
|
-
};
|
|
388
|
-
await this.createPermissionOnChain(request, expiry);
|
|
389
|
-
this.markRecentGrant(request);
|
|
390
|
-
}
|
|
391
|
-
// Resolve all pending promises for this request
|
|
392
|
-
for (const p of matching.pending) {
|
|
393
|
-
p.resolve(true);
|
|
394
|
-
}
|
|
395
|
-
this.activeRequests.delete(params.requestID);
|
|
396
|
-
}
|
|
397
|
-
/**
|
|
398
|
-
* Denies a previously requested grouped permission.
|
|
399
|
-
* @param requestID The ID of the request being denied.
|
|
400
|
-
*/
|
|
401
|
-
async denyGroupedPermission(requestID) {
|
|
402
|
-
const matching = this.activeRequests.get(requestID);
|
|
403
|
-
if (!matching) {
|
|
404
|
-
throw new Error('Request ID not found.');
|
|
405
|
-
}
|
|
406
|
-
const err = new Error('The user has denied the request for permission.');
|
|
407
|
-
err.code = 'ERR_PERMISSION_DENIED';
|
|
408
|
-
for (const p of matching.pending) {
|
|
409
|
-
p.reject(err);
|
|
410
|
-
}
|
|
411
|
-
this.activeRequests.delete(requestID);
|
|
412
|
-
}
|
|
413
|
-
/* ---------------------------------------------------------------------
|
|
414
|
-
* 3) THE "ENSURE" METHODS: CHECK IF PERMISSION EXISTS, OTHERWISE PROMPT
|
|
415
|
-
* --------------------------------------------------------------------- */
|
|
416
|
-
/**
|
|
417
|
-
* Ensures the originator has protocol usage permission.
|
|
418
|
-
* If no valid (unexpired) permission token is found, triggers a permission request flow.
|
|
419
|
-
*/
|
|
420
|
-
async ensureProtocolPermission({ originator, privileged, protocolID, counterparty, reason, seekPermission = true, usageType }) {
|
|
421
|
-
const { normalized: normalizedOriginator, lookupValues } = this.prepareOriginator(originator);
|
|
422
|
-
originator = normalizedOriginator;
|
|
423
|
-
// 1) adminOriginator can do anything
|
|
424
|
-
if (this.isAdminOriginator(originator))
|
|
425
|
-
return true;
|
|
426
|
-
// 2) If security level=0, we consider it "open" usage
|
|
427
|
-
const [level, protoName] = protocolID;
|
|
428
|
-
if (level === 0)
|
|
429
|
-
return true;
|
|
430
|
-
// 3) If protocol is admin-reserved, block
|
|
431
|
-
if (this.isAdminProtocol(protocolID)) {
|
|
432
|
-
throw new Error(`Protocol “${protoName}” is admin-only.`);
|
|
433
|
-
}
|
|
434
|
-
// Allow the configured exceptions.
|
|
435
|
-
if (usageType === 'signing' && !this.config.seekProtocolPermissionsForSigning) {
|
|
436
|
-
return true;
|
|
437
|
-
}
|
|
438
|
-
if (usageType === 'encrypting' && !this.config.seekProtocolPermissionsForEncrypting) {
|
|
439
|
-
return true;
|
|
440
|
-
}
|
|
441
|
-
if (usageType === 'hmac' && !this.config.seekProtocolPermissionsForHMAC) {
|
|
442
|
-
return true;
|
|
443
|
-
}
|
|
444
|
-
if (usageType === 'publicKey' && !this.config.seekPermissionsForPublicKeyRevelation) {
|
|
445
|
-
return true;
|
|
446
|
-
}
|
|
447
|
-
if (usageType === 'identityKey' && !this.config.seekPermissionsForIdentityKeyRevelation) {
|
|
448
|
-
return true;
|
|
449
|
-
}
|
|
450
|
-
if (usageType === 'linkageRevelation' && !this.config.seekPermissionsForKeyLinkageRevelation) {
|
|
451
|
-
return true;
|
|
452
|
-
}
|
|
453
|
-
if (!this.config.differentiatePrivilegedOperations) {
|
|
454
|
-
privileged = false;
|
|
455
|
-
}
|
|
456
|
-
const cacheKey = this.buildRequestKey({
|
|
457
|
-
type: 'protocol',
|
|
458
|
-
originator,
|
|
459
|
-
privileged,
|
|
460
|
-
protocolID,
|
|
461
|
-
counterparty
|
|
462
|
-
});
|
|
463
|
-
if (this.isPermissionCached(cacheKey)) {
|
|
464
|
-
return true;
|
|
465
|
-
}
|
|
466
|
-
if (this.isRecentlyGranted(cacheKey)) {
|
|
467
|
-
return true;
|
|
468
|
-
}
|
|
469
|
-
// 4) Attempt to find a valid token in the internal basket
|
|
470
|
-
const token = await this.findProtocolToken(originator, privileged, protocolID, counterparty,
|
|
471
|
-
/*includeExpired=*/ true, lookupValues);
|
|
472
|
-
if (token) {
|
|
473
|
-
if (!this.isTokenExpired(token.expiry)) {
|
|
474
|
-
// valid and unexpired
|
|
475
|
-
this.cachePermission(cacheKey, token.expiry);
|
|
476
|
-
return true;
|
|
477
|
-
}
|
|
478
|
-
else {
|
|
479
|
-
// has a token but expired => request renewal if allowed
|
|
480
|
-
if (!seekPermission) {
|
|
481
|
-
throw new Error(`Protocol permission expired and no further user consent allowed (seekPermission=false).`);
|
|
482
|
-
}
|
|
483
|
-
return await this.requestPermissionFlow({
|
|
484
|
-
type: 'protocol',
|
|
485
|
-
originator,
|
|
486
|
-
privileged,
|
|
487
|
-
protocolID,
|
|
488
|
-
counterparty,
|
|
489
|
-
reason,
|
|
490
|
-
renewal: true,
|
|
491
|
-
previousToken: token
|
|
492
|
-
});
|
|
493
|
-
}
|
|
494
|
-
}
|
|
495
|
-
else {
|
|
496
|
-
// No token found => request a new one if allowed
|
|
497
|
-
if (!seekPermission) {
|
|
498
|
-
throw new Error(`No protocol permission token found (seekPermission=false).`);
|
|
499
|
-
}
|
|
500
|
-
const granted = await this.requestPermissionFlow({
|
|
501
|
-
type: 'protocol',
|
|
502
|
-
originator,
|
|
503
|
-
privileged,
|
|
504
|
-
protocolID,
|
|
505
|
-
counterparty,
|
|
506
|
-
reason,
|
|
507
|
-
renewal: false
|
|
508
|
-
});
|
|
509
|
-
return granted;
|
|
510
|
-
}
|
|
511
|
-
}
|
|
512
|
-
/**
|
|
513
|
-
* Ensures the originator has basket usage permission for the specified basket.
|
|
514
|
-
* If not, triggers a permission request flow.
|
|
515
|
-
*/
|
|
516
|
-
async ensureBasketAccess({ originator, basket, reason, seekPermission = true, usageType }) {
|
|
517
|
-
const { normalized: normalizedOriginator, lookupValues } = this.prepareOriginator(originator);
|
|
518
|
-
originator = normalizedOriginator;
|
|
519
|
-
if (this.isAdminOriginator(originator))
|
|
520
|
-
return true;
|
|
521
|
-
if (this.isAdminBasket(basket)) {
|
|
522
|
-
throw new Error(`Basket “${basket}” is admin-only.`);
|
|
523
|
-
}
|
|
524
|
-
if (usageType === 'insertion' && !this.config.seekBasketInsertionPermissions)
|
|
525
|
-
return true;
|
|
526
|
-
if (usageType === 'removal' && !this.config.seekBasketRemovalPermissions)
|
|
527
|
-
return true;
|
|
528
|
-
if (usageType === 'listing' && !this.config.seekBasketListingPermissions)
|
|
529
|
-
return true;
|
|
530
|
-
const cacheKey = this.buildRequestKey({ type: 'basket', originator, basket });
|
|
531
|
-
if (this.isPermissionCached(cacheKey)) {
|
|
532
|
-
return true;
|
|
533
|
-
}
|
|
534
|
-
if (this.isRecentlyGranted(cacheKey)) {
|
|
535
|
-
return true;
|
|
536
|
-
}
|
|
537
|
-
const token = await this.findBasketToken(originator, basket, true, lookupValues);
|
|
538
|
-
if (token) {
|
|
539
|
-
if (!this.isTokenExpired(token.expiry)) {
|
|
540
|
-
this.cachePermission(cacheKey, token.expiry);
|
|
541
|
-
return true;
|
|
542
|
-
}
|
|
543
|
-
else {
|
|
544
|
-
if (!seekPermission) {
|
|
545
|
-
throw new Error(`Basket permission expired (seekPermission=false).`);
|
|
546
|
-
}
|
|
547
|
-
return await this.requestPermissionFlow({
|
|
548
|
-
type: 'basket',
|
|
549
|
-
originator,
|
|
550
|
-
basket,
|
|
551
|
-
reason,
|
|
552
|
-
renewal: true,
|
|
553
|
-
previousToken: token
|
|
554
|
-
});
|
|
555
|
-
}
|
|
556
|
-
}
|
|
557
|
-
else {
|
|
558
|
-
// none
|
|
559
|
-
if (!seekPermission) {
|
|
560
|
-
throw new Error(`No basket permission found, and no user consent allowed (seekPermission=false).`);
|
|
561
|
-
}
|
|
562
|
-
const granted = await this.requestPermissionFlow({
|
|
563
|
-
type: 'basket',
|
|
564
|
-
originator,
|
|
565
|
-
basket,
|
|
566
|
-
reason,
|
|
567
|
-
renewal: false
|
|
568
|
-
});
|
|
569
|
-
return granted;
|
|
570
|
-
}
|
|
571
|
-
}
|
|
572
|
-
/**
|
|
573
|
-
* Ensures the originator has a valid certificate permission.
|
|
574
|
-
* This is relevant when revealing certificate fields in DCAP contexts.
|
|
575
|
-
*/
|
|
576
|
-
async ensureCertificateAccess({ originator, privileged, verifier, certType, fields, reason, seekPermission = true, usageType }) {
|
|
577
|
-
const { normalized: normalizedOriginator, lookupValues } = this.prepareOriginator(originator);
|
|
578
|
-
originator = normalizedOriginator;
|
|
579
|
-
if (this.isAdminOriginator(originator))
|
|
580
|
-
return true;
|
|
581
|
-
if (usageType === 'disclosure' && !this.config.seekCertificateDisclosurePermissions) {
|
|
582
|
-
return true;
|
|
583
|
-
}
|
|
584
|
-
if (!this.config.differentiatePrivilegedOperations) {
|
|
585
|
-
privileged = false;
|
|
586
|
-
}
|
|
587
|
-
const cacheKey = this.buildRequestKey({
|
|
588
|
-
type: 'certificate',
|
|
589
|
-
originator,
|
|
590
|
-
privileged,
|
|
591
|
-
certificate: { verifier, certType, fields }
|
|
592
|
-
});
|
|
593
|
-
if (this.isPermissionCached(cacheKey)) {
|
|
594
|
-
return true;
|
|
595
|
-
}
|
|
596
|
-
if (this.isRecentlyGranted(cacheKey)) {
|
|
597
|
-
return true;
|
|
598
|
-
}
|
|
599
|
-
const token = await this.findCertificateToken(originator, privileged, verifier, certType, fields,
|
|
600
|
-
/*includeExpired=*/ true, lookupValues);
|
|
601
|
-
if (token) {
|
|
602
|
-
if (!this.isTokenExpired(token.expiry)) {
|
|
603
|
-
this.cachePermission(cacheKey, token.expiry);
|
|
604
|
-
return true;
|
|
605
|
-
}
|
|
606
|
-
else {
|
|
607
|
-
if (!seekPermission) {
|
|
608
|
-
throw new Error(`Certificate permission expired (seekPermission=false).`);
|
|
609
|
-
}
|
|
610
|
-
return await this.requestPermissionFlow({
|
|
611
|
-
type: 'certificate',
|
|
612
|
-
originator,
|
|
613
|
-
privileged,
|
|
614
|
-
certificate: { verifier, certType, fields },
|
|
615
|
-
reason,
|
|
616
|
-
renewal: true,
|
|
617
|
-
previousToken: token
|
|
618
|
-
});
|
|
619
|
-
}
|
|
620
|
-
}
|
|
621
|
-
else {
|
|
622
|
-
if (!seekPermission) {
|
|
623
|
-
throw new Error(`No certificate permission found (seekPermission=false).`);
|
|
624
|
-
}
|
|
625
|
-
const granted = await this.requestPermissionFlow({
|
|
626
|
-
type: 'certificate',
|
|
627
|
-
originator,
|
|
628
|
-
privileged,
|
|
629
|
-
certificate: { verifier, certType, fields },
|
|
630
|
-
reason,
|
|
631
|
-
renewal: false
|
|
632
|
-
});
|
|
633
|
-
return granted;
|
|
634
|
-
}
|
|
635
|
-
}
|
|
636
|
-
/**
|
|
637
|
-
* Ensures the originator has spending authorization (DSAP) for a certain satoshi amount.
|
|
638
|
-
* If the existing token limit is insufficient, attempts to renew. If no token, attempts to create one.
|
|
639
|
-
*/
|
|
640
|
-
async ensureSpendingAuthorization({ originator, satoshis, lineItems, reason, seekPermission = true }) {
|
|
641
|
-
const { normalized: normalizedOriginator, lookupValues } = this.prepareOriginator(originator);
|
|
642
|
-
originator = normalizedOriginator;
|
|
643
|
-
if (this.isAdminOriginator(originator))
|
|
644
|
-
return true;
|
|
645
|
-
if (!this.config.seekSpendingPermissions) {
|
|
646
|
-
// We skip spending permission entirely
|
|
647
|
-
return true;
|
|
648
|
-
}
|
|
649
|
-
const cacheKey = this.buildRequestKey({ type: 'spending', originator, spending: { satoshis } });
|
|
650
|
-
if (this.isPermissionCached(cacheKey)) {
|
|
651
|
-
return true;
|
|
652
|
-
}
|
|
653
|
-
const token = await this.findSpendingToken(originator, lookupValues);
|
|
654
|
-
if (token === null || token === void 0 ? void 0 : token.authorizedAmount) {
|
|
655
|
-
// Check how much has been spent so far
|
|
656
|
-
const spentSoFar = await this.querySpentSince(token);
|
|
657
|
-
if (spentSoFar + satoshis <= token.authorizedAmount) {
|
|
658
|
-
this.cachePermission(cacheKey, token.expiry);
|
|
659
|
-
return true;
|
|
660
|
-
}
|
|
661
|
-
else {
|
|
662
|
-
// Renew if possible
|
|
663
|
-
if (!seekPermission) {
|
|
664
|
-
throw new Error(`Spending authorization insufficient for ${satoshis}, no user consent (seekPermission=false).`);
|
|
665
|
-
}
|
|
666
|
-
return await this.requestPermissionFlow({
|
|
667
|
-
type: 'spending',
|
|
668
|
-
originator,
|
|
669
|
-
spending: { satoshis, lineItems },
|
|
670
|
-
reason,
|
|
671
|
-
renewal: true,
|
|
672
|
-
previousToken: token
|
|
673
|
-
});
|
|
674
|
-
}
|
|
675
|
-
}
|
|
676
|
-
else {
|
|
677
|
-
// no token
|
|
678
|
-
if (!seekPermission) {
|
|
679
|
-
throw new Error(`No spending authorization found, (seekPermission=false).`);
|
|
680
|
-
}
|
|
681
|
-
return await this.requestPermissionFlow({
|
|
682
|
-
type: 'spending',
|
|
683
|
-
originator,
|
|
684
|
-
spending: { satoshis, lineItems },
|
|
685
|
-
reason,
|
|
686
|
-
renewal: false
|
|
687
|
-
});
|
|
688
|
-
}
|
|
689
|
-
}
|
|
690
|
-
/**
|
|
691
|
-
* Ensures the originator has label usage permission.
|
|
692
|
-
* If no valid (unexpired) permission token is found, triggers a permission request flow.
|
|
693
|
-
*/
|
|
694
|
-
async ensureLabelAccess({ originator, label, reason, seekPermission = true, usageType }) {
|
|
695
|
-
const { normalized: normalizedOriginator } = this.prepareOriginator(originator);
|
|
696
|
-
originator = normalizedOriginator;
|
|
697
|
-
// 1) adminOriginator can do anything
|
|
698
|
-
if (this.isAdminOriginator(originator))
|
|
699
|
-
return true;
|
|
700
|
-
// 2) If label is admin-reserved, block
|
|
701
|
-
if (this.isAdminLabel(label)) {
|
|
702
|
-
throw new Error(`Label “${label}” is admin-only.`);
|
|
703
|
-
}
|
|
704
|
-
if (usageType === 'apply' && !this.config.seekPermissionWhenApplyingActionLabels) {
|
|
705
|
-
return true;
|
|
706
|
-
}
|
|
707
|
-
if (usageType === 'list' && !this.config.seekPermissionWhenListingActionsByLabel) {
|
|
708
|
-
return true;
|
|
709
|
-
}
|
|
710
|
-
const cacheKey = this.buildRequestKey({
|
|
711
|
-
type: 'protocol',
|
|
712
|
-
originator,
|
|
713
|
-
privileged: false,
|
|
714
|
-
protocolID: [1, `action label ${label}`],
|
|
715
|
-
counterparty: 'self'
|
|
716
|
-
});
|
|
717
|
-
if (this.isPermissionCached(cacheKey)) {
|
|
718
|
-
return true;
|
|
719
|
-
}
|
|
720
|
-
// 3) Let ensureProtocolPermission handle the rest.
|
|
721
|
-
return await this.ensureProtocolPermission({
|
|
722
|
-
originator,
|
|
723
|
-
privileged: false,
|
|
724
|
-
protocolID: [1, `action label ${label}`],
|
|
725
|
-
counterparty: 'self',
|
|
726
|
-
reason,
|
|
727
|
-
seekPermission,
|
|
728
|
-
usageType: 'generic'
|
|
729
|
-
});
|
|
730
|
-
}
|
|
731
|
-
/**
|
|
732
|
-
* A central method that triggers the permission request flow.
|
|
733
|
-
* - It checks if there's already an active request for the same key
|
|
734
|
-
* - If so, we wait on that existing request rather than creating a duplicative one
|
|
735
|
-
* - Otherwise we create a new request queue, call the relevant "onXXXRequested" event,
|
|
736
|
-
* and return a promise that resolves once permission is granted or rejects if denied.
|
|
737
|
-
*/
|
|
738
|
-
async requestPermissionFlow(r) {
|
|
739
|
-
var _a;
|
|
740
|
-
const normalizedOriginator = this.normalizeOriginator(r.originator) || r.originator;
|
|
741
|
-
const preparedRequest = {
|
|
742
|
-
...r,
|
|
743
|
-
originator: normalizedOriginator,
|
|
744
|
-
displayOriginator: (_a = r.displayOriginator) !== null && _a !== void 0 ? _a : r.originator
|
|
745
|
-
};
|
|
746
|
-
const key = this.buildRequestKey(preparedRequest);
|
|
747
|
-
// If there's already a queue for the same resource, we piggyback on it
|
|
748
|
-
const existingQueue = this.activeRequests.get(key);
|
|
749
|
-
if (existingQueue && existingQueue.pending.length > 0) {
|
|
750
|
-
return new Promise((resolve, reject) => {
|
|
751
|
-
existingQueue.pending.push({ resolve, reject });
|
|
752
|
-
});
|
|
753
|
-
}
|
|
754
|
-
// Otherwise, create a new queue with a single entry
|
|
755
|
-
// Return a promise that resolves or rejects once the user grants/denies
|
|
756
|
-
return new Promise(async (resolve, reject) => {
|
|
757
|
-
this.activeRequests.set(key, {
|
|
758
|
-
request: preparedRequest,
|
|
759
|
-
pending: [{ resolve, reject }]
|
|
760
|
-
});
|
|
761
|
-
// Fire the relevant onXXXRequested event (which one depends on r.type)
|
|
762
|
-
switch (preparedRequest.type) {
|
|
763
|
-
case 'protocol':
|
|
764
|
-
await this.callEvent('onProtocolPermissionRequested', {
|
|
765
|
-
...preparedRequest,
|
|
766
|
-
requestID: key
|
|
767
|
-
});
|
|
768
|
-
break;
|
|
769
|
-
case 'basket':
|
|
770
|
-
await this.callEvent('onBasketAccessRequested', {
|
|
771
|
-
...preparedRequest,
|
|
772
|
-
requestID: key
|
|
773
|
-
});
|
|
774
|
-
break;
|
|
775
|
-
case 'certificate':
|
|
776
|
-
await this.callEvent('onCertificateAccessRequested', {
|
|
777
|
-
...preparedRequest,
|
|
778
|
-
requestID: key
|
|
779
|
-
});
|
|
780
|
-
break;
|
|
781
|
-
case 'spending':
|
|
782
|
-
await this.callEvent('onSpendingAuthorizationRequested', {
|
|
783
|
-
...preparedRequest,
|
|
784
|
-
requestID: key
|
|
785
|
-
});
|
|
786
|
-
break;
|
|
787
|
-
}
|
|
788
|
-
});
|
|
789
|
-
}
|
|
790
|
-
/** We always use `keyID="1"` and `counterparty="self"` for these encryption ops. */
|
|
791
|
-
async encryptPermissionTokenField(plaintext) {
|
|
792
|
-
const data = typeof plaintext === 'string' ? sdk_1.Utils.toArray(plaintext, 'utf8') : plaintext;
|
|
793
|
-
const { ciphertext } = await this.underlying.encrypt({
|
|
794
|
-
plaintext: data,
|
|
795
|
-
protocolID: WalletPermissionsManager.PERM_TOKEN_ENCRYPTION_PROTOCOL,
|
|
796
|
-
keyID: '1'
|
|
797
|
-
}, this.adminOriginator);
|
|
798
|
-
return ciphertext;
|
|
799
|
-
}
|
|
800
|
-
async decryptPermissionTokenField(ciphertext) {
|
|
801
|
-
try {
|
|
802
|
-
const { plaintext } = await this.underlying.decrypt({
|
|
803
|
-
ciphertext,
|
|
804
|
-
protocolID: WalletPermissionsManager.PERM_TOKEN_ENCRYPTION_PROTOCOL,
|
|
805
|
-
keyID: '1'
|
|
806
|
-
}, this.adminOriginator);
|
|
807
|
-
return plaintext;
|
|
808
|
-
}
|
|
809
|
-
catch (e) {
|
|
810
|
-
return ciphertext;
|
|
811
|
-
}
|
|
812
|
-
}
|
|
813
|
-
/**
|
|
814
|
-
* Encrypts wallet metadata if configured to do so, otherwise returns the original plaintext for storage.
|
|
815
|
-
* @param plaintext The metadata to encrypt if configured to do so
|
|
816
|
-
* @returns The encrypted metadata, or the original value if encryption was disabled.
|
|
817
|
-
*/
|
|
818
|
-
async maybeEncryptMetadata(plaintext) {
|
|
819
|
-
if (!this.config.encryptWalletMetadata) {
|
|
820
|
-
return plaintext;
|
|
821
|
-
}
|
|
822
|
-
const { ciphertext } = await this.underlying.encrypt({
|
|
823
|
-
plaintext: sdk_1.Utils.toArray(plaintext, 'utf8'),
|
|
824
|
-
protocolID: WalletPermissionsManager.METADATA_ENCRYPTION_PROTOCOL,
|
|
825
|
-
keyID: '1'
|
|
826
|
-
}, this.adminOriginator);
|
|
827
|
-
return sdk_1.Utils.toBase64(ciphertext);
|
|
828
|
-
}
|
|
829
|
-
/**
|
|
830
|
-
* Attempts to decrypt metadata. if decryption fails, assumes the value is already plaintext and returns it.
|
|
831
|
-
* @param ciphertext The metadata to attempt decryption for.
|
|
832
|
-
* @returns The decrypted metadata. If decryption fails, returns the original value instead.
|
|
833
|
-
*/
|
|
834
|
-
async maybeDecryptMetadata(ciphertext) {
|
|
835
|
-
try {
|
|
836
|
-
const { plaintext } = await this.underlying.decrypt({
|
|
837
|
-
ciphertext: sdk_1.Utils.toArray(ciphertext, 'base64'),
|
|
838
|
-
protocolID: WalletPermissionsManager.METADATA_ENCRYPTION_PROTOCOL,
|
|
839
|
-
keyID: '1'
|
|
840
|
-
}, this.adminOriginator);
|
|
841
|
-
return sdk_1.Utils.toUTF8(plaintext);
|
|
842
|
-
}
|
|
843
|
-
catch (e) {
|
|
844
|
-
return ciphertext;
|
|
845
|
-
}
|
|
846
|
-
}
|
|
847
|
-
/** Helper to see if a token's expiry is in the past. */
|
|
848
|
-
isTokenExpired(expiry) {
|
|
849
|
-
const now = Math.floor(Date.now() / 1000);
|
|
850
|
-
return expiry > 0 && expiry < now;
|
|
851
|
-
}
|
|
852
|
-
/** Looks for a DPACP permission token matching origin/domain, privileged, protocol, cpty. */
|
|
853
|
-
async findProtocolToken(originator, privileged, protocolID, counterparty, includeExpired, originatorLookupValues) {
|
|
854
|
-
const [secLevel, protoName] = protocolID;
|
|
855
|
-
const originsToTry = (originatorLookupValues === null || originatorLookupValues === void 0 ? void 0 : originatorLookupValues.length) ? originatorLookupValues : [originator];
|
|
856
|
-
for (const originTag of originsToTry) {
|
|
857
|
-
const tags = [
|
|
858
|
-
`originator ${originTag}`,
|
|
859
|
-
`privileged ${!!privileged}`,
|
|
860
|
-
`protocolName ${protoName}`,
|
|
861
|
-
`protocolSecurityLevel ${secLevel}`
|
|
862
|
-
];
|
|
863
|
-
if (secLevel === 2) {
|
|
864
|
-
tags.push(`counterparty ${counterparty}`);
|
|
865
|
-
}
|
|
866
|
-
const result = await this.underlying.listOutputs({
|
|
867
|
-
basket: BASKET_MAP.protocol,
|
|
868
|
-
tags,
|
|
869
|
-
tagQueryMode: 'all',
|
|
870
|
-
include: 'entire transactions'
|
|
871
|
-
}, this.adminOriginator);
|
|
872
|
-
for (const out of result.outputs) {
|
|
873
|
-
const [txid, outputIndexStr] = out.outpoint.split('.');
|
|
874
|
-
const tx = sdk_1.Transaction.fromBEEF(result.BEEF, txid);
|
|
875
|
-
const dec = sdk_1.PushDrop.decode(tx.outputs[Number(outputIndexStr)].lockingScript);
|
|
876
|
-
if (!dec || !dec.fields || dec.fields.length < 6)
|
|
877
|
-
continue;
|
|
878
|
-
const domainRaw = dec.fields[0];
|
|
879
|
-
const expiryRaw = dec.fields[1];
|
|
880
|
-
const privRaw = dec.fields[2];
|
|
881
|
-
const secLevelRaw = dec.fields[3];
|
|
882
|
-
const protoNameRaw = dec.fields[4];
|
|
883
|
-
const counterpartyRaw = dec.fields[5];
|
|
884
|
-
const domainDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(domainRaw));
|
|
885
|
-
const normalizedDomain = this.normalizeOriginator(domainDecoded);
|
|
886
|
-
if (normalizedDomain !== originator) {
|
|
887
|
-
continue;
|
|
888
|
-
}
|
|
889
|
-
const expiryDecoded = parseInt(sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(expiryRaw)), 10);
|
|
890
|
-
const privDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(privRaw)) === 'true';
|
|
891
|
-
const secLevelDecoded = parseInt(sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(secLevelRaw)), 10);
|
|
892
|
-
const protoNameDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(protoNameRaw));
|
|
893
|
-
const cptyDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(counterpartyRaw));
|
|
894
|
-
if (privDecoded !== !!privileged ||
|
|
895
|
-
secLevelDecoded !== secLevel ||
|
|
896
|
-
protoNameDecoded !== protoName ||
|
|
897
|
-
(secLevelDecoded === 2 && cptyDecoded !== counterparty)) {
|
|
898
|
-
continue;
|
|
899
|
-
}
|
|
900
|
-
if (!includeExpired && this.isTokenExpired(expiryDecoded)) {
|
|
901
|
-
continue;
|
|
902
|
-
}
|
|
903
|
-
return {
|
|
904
|
-
tx: tx.toBEEF(),
|
|
905
|
-
txid: out.outpoint.split('.')[0],
|
|
906
|
-
outputIndex: parseInt(out.outpoint.split('.')[1], 10),
|
|
907
|
-
outputScript: tx.outputs[Number(outputIndexStr)].lockingScript.toHex(),
|
|
908
|
-
satoshis: out.satoshis,
|
|
909
|
-
originator,
|
|
910
|
-
rawOriginator: domainDecoded,
|
|
911
|
-
privileged,
|
|
912
|
-
protocol: protoName,
|
|
913
|
-
securityLevel: secLevel,
|
|
914
|
-
expiry: expiryDecoded,
|
|
915
|
-
counterparty: cptyDecoded
|
|
916
|
-
};
|
|
917
|
-
}
|
|
918
|
-
}
|
|
919
|
-
return undefined;
|
|
920
|
-
}
|
|
921
|
-
/** Finds ALL DPACP permission tokens matching origin/domain, privileged, protocol, cpty. Never filters by expiry. */
|
|
922
|
-
async findAllProtocolTokens(originator, privileged, protocolID, counterparty, originatorLookupValues) {
|
|
923
|
-
const [secLevel, protoName] = protocolID;
|
|
924
|
-
const originsToTry = (originatorLookupValues === null || originatorLookupValues === void 0 ? void 0 : originatorLookupValues.length) ? originatorLookupValues : [originator];
|
|
925
|
-
const matches = [];
|
|
926
|
-
const seen = new Set();
|
|
927
|
-
for (const originTag of originsToTry) {
|
|
928
|
-
const tags = [
|
|
929
|
-
`originator ${originTag}`,
|
|
930
|
-
`privileged ${!!privileged}`,
|
|
931
|
-
`protocolName ${protoName}`,
|
|
932
|
-
`protocolSecurityLevel ${secLevel}`
|
|
933
|
-
];
|
|
934
|
-
if (secLevel === 2) {
|
|
935
|
-
tags.push(`counterparty ${counterparty}`);
|
|
936
|
-
}
|
|
937
|
-
const result = await this.underlying.listOutputs({
|
|
938
|
-
basket: BASKET_MAP.protocol,
|
|
939
|
-
tags,
|
|
940
|
-
tagQueryMode: 'all',
|
|
941
|
-
include: 'entire transactions'
|
|
942
|
-
}, this.adminOriginator);
|
|
943
|
-
for (const out of result.outputs) {
|
|
944
|
-
if (seen.has(out.outpoint))
|
|
945
|
-
continue;
|
|
946
|
-
const [txid, outputIndexStr] = out.outpoint.split('.');
|
|
947
|
-
const tx = sdk_1.Transaction.fromBEEF(result.BEEF, txid);
|
|
948
|
-
const vout = Number(outputIndexStr);
|
|
949
|
-
const dec = sdk_1.PushDrop.decode(tx.outputs[vout].lockingScript);
|
|
950
|
-
if (!dec || !dec.fields || dec.fields.length < 6)
|
|
951
|
-
continue;
|
|
952
|
-
const domainRaw = dec.fields[0];
|
|
953
|
-
const expiryRaw = dec.fields[1];
|
|
954
|
-
const privRaw = dec.fields[2];
|
|
955
|
-
const secLevelRaw = dec.fields[3];
|
|
956
|
-
const protoNameRaw = dec.fields[4];
|
|
957
|
-
const counterpartyRaw = dec.fields[5];
|
|
958
|
-
const domainDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(domainRaw));
|
|
959
|
-
const normalizedDomain = this.normalizeOriginator(domainDecoded);
|
|
960
|
-
if (normalizedDomain !== originator) {
|
|
961
|
-
continue;
|
|
962
|
-
}
|
|
963
|
-
const expiryDecoded = parseInt(sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(expiryRaw)), 10);
|
|
964
|
-
const privDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(privRaw)) === 'true';
|
|
965
|
-
const secLevelDecoded = parseInt(sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(secLevelRaw)), 10);
|
|
966
|
-
const protoNameDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(protoNameRaw));
|
|
967
|
-
const cptyDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(counterpartyRaw));
|
|
968
|
-
if (privDecoded !== !!privileged ||
|
|
969
|
-
secLevelDecoded !== secLevel ||
|
|
970
|
-
protoNameDecoded !== protoName ||
|
|
971
|
-
(secLevelDecoded === 2 && cptyDecoded !== counterparty)) {
|
|
972
|
-
continue;
|
|
973
|
-
}
|
|
974
|
-
seen.add(out.outpoint);
|
|
975
|
-
matches.push({
|
|
976
|
-
tx: tx.toBEEF(),
|
|
977
|
-
txid,
|
|
978
|
-
outputIndex: vout,
|
|
979
|
-
outputScript: tx.outputs[vout].lockingScript.toHex(),
|
|
980
|
-
satoshis: out.satoshis,
|
|
981
|
-
originator,
|
|
982
|
-
rawOriginator: domainDecoded,
|
|
983
|
-
privileged,
|
|
984
|
-
protocol: protoName,
|
|
985
|
-
securityLevel: secLevel,
|
|
986
|
-
expiry: expiryDecoded,
|
|
987
|
-
counterparty: cptyDecoded
|
|
988
|
-
});
|
|
989
|
-
}
|
|
990
|
-
}
|
|
991
|
-
return matches;
|
|
992
|
-
}
|
|
993
|
-
/** Looks for a DBAP token matching (originator, basket). */
|
|
994
|
-
async findBasketToken(originator, basket, includeExpired, originatorLookupValues) {
|
|
995
|
-
const originsToTry = (originatorLookupValues === null || originatorLookupValues === void 0 ? void 0 : originatorLookupValues.length) ? originatorLookupValues : [originator];
|
|
996
|
-
for (const originTag of originsToTry) {
|
|
997
|
-
const result = await this.underlying.listOutputs({
|
|
998
|
-
basket: BASKET_MAP.basket,
|
|
999
|
-
tags: [`originator ${originTag}`, `basket ${basket}`],
|
|
1000
|
-
tagQueryMode: 'all',
|
|
1001
|
-
include: 'entire transactions'
|
|
1002
|
-
}, this.adminOriginator);
|
|
1003
|
-
for (const out of result.outputs) {
|
|
1004
|
-
const [txid, outputIndexStr] = out.outpoint.split('.');
|
|
1005
|
-
const tx = sdk_1.Transaction.fromBEEF(result.BEEF, txid);
|
|
1006
|
-
const dec = sdk_1.PushDrop.decode(tx.outputs[Number(outputIndexStr)].lockingScript);
|
|
1007
|
-
if (!(dec === null || dec === void 0 ? void 0 : dec.fields) || dec.fields.length < 3)
|
|
1008
|
-
continue;
|
|
1009
|
-
const domainRaw = dec.fields[0];
|
|
1010
|
-
const expiryRaw = dec.fields[1];
|
|
1011
|
-
const basketRaw = dec.fields[2];
|
|
1012
|
-
const domainDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(domainRaw));
|
|
1013
|
-
const normalizedDomain = this.normalizeOriginator(domainDecoded);
|
|
1014
|
-
if (normalizedDomain !== originator) {
|
|
1015
|
-
continue;
|
|
1016
|
-
}
|
|
1017
|
-
const expiryDecoded = parseInt(sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(expiryRaw)), 10);
|
|
1018
|
-
const basketDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(basketRaw));
|
|
1019
|
-
if (basketDecoded !== basket)
|
|
1020
|
-
continue;
|
|
1021
|
-
if (!includeExpired && this.isTokenExpired(expiryDecoded))
|
|
1022
|
-
continue;
|
|
1023
|
-
return {
|
|
1024
|
-
tx: tx.toBEEF(),
|
|
1025
|
-
txid: out.outpoint.split('.')[0],
|
|
1026
|
-
outputIndex: parseInt(out.outpoint.split('.')[1], 10),
|
|
1027
|
-
outputScript: tx.outputs[Number(outputIndexStr)].lockingScript.toHex(),
|
|
1028
|
-
satoshis: out.satoshis,
|
|
1029
|
-
originator,
|
|
1030
|
-
rawOriginator: domainDecoded,
|
|
1031
|
-
basketName: basketDecoded,
|
|
1032
|
-
expiry: expiryDecoded
|
|
1033
|
-
};
|
|
1034
|
-
}
|
|
1035
|
-
}
|
|
1036
|
-
return undefined;
|
|
1037
|
-
}
|
|
1038
|
-
/** Looks for a DCAP token matching (origin, privileged, verifier, certType, fields subset). */
|
|
1039
|
-
async findCertificateToken(originator, privileged, verifier, certType, fields, includeExpired, originatorLookupValues) {
|
|
1040
|
-
const originsToTry = (originatorLookupValues === null || originatorLookupValues === void 0 ? void 0 : originatorLookupValues.length) ? originatorLookupValues : [originator];
|
|
1041
|
-
for (const originTag of originsToTry) {
|
|
1042
|
-
const result = await this.underlying.listOutputs({
|
|
1043
|
-
basket: BASKET_MAP.certificate,
|
|
1044
|
-
tags: [`originator ${originTag}`, `privileged ${!!privileged}`, `type ${certType}`, `verifier ${verifier}`],
|
|
1045
|
-
tagQueryMode: 'all',
|
|
1046
|
-
include: 'entire transactions'
|
|
1047
|
-
}, this.adminOriginator);
|
|
1048
|
-
for (const out of result.outputs) {
|
|
1049
|
-
const [txid, outputIndexStr] = out.outpoint.split('.');
|
|
1050
|
-
const tx = sdk_1.Transaction.fromBEEF(result.BEEF, txid);
|
|
1051
|
-
const dec = sdk_1.PushDrop.decode(tx.outputs[Number(outputIndexStr)].lockingScript);
|
|
1052
|
-
if (!(dec === null || dec === void 0 ? void 0 : dec.fields) || dec.fields.length < 6)
|
|
1053
|
-
continue;
|
|
1054
|
-
const [domainRaw, expiryRaw, privRaw, typeRaw, fieldsRaw, verifierRaw] = dec.fields;
|
|
1055
|
-
const domainDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(domainRaw));
|
|
1056
|
-
const normalizedDomain = this.normalizeOriginator(domainDecoded);
|
|
1057
|
-
if (normalizedDomain !== originator) {
|
|
1058
|
-
continue;
|
|
1059
|
-
}
|
|
1060
|
-
const expiryDecoded = parseInt(sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(expiryRaw)), 10);
|
|
1061
|
-
const privDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(privRaw)) === 'true';
|
|
1062
|
-
const typeDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(typeRaw));
|
|
1063
|
-
const verifierDec = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(verifierRaw));
|
|
1064
|
-
const fieldsJson = await this.decryptPermissionTokenField(fieldsRaw);
|
|
1065
|
-
const allFields = JSON.parse(sdk_1.Utils.toUTF8(fieldsJson));
|
|
1066
|
-
if (privDecoded !== !!privileged || typeDecoded !== certType || verifierDec !== verifier) {
|
|
1067
|
-
continue;
|
|
1068
|
-
}
|
|
1069
|
-
// Check if 'fields' is a subset of 'allFields'
|
|
1070
|
-
const setAll = new Set(allFields);
|
|
1071
|
-
if (fields.some(f => !setAll.has(f))) {
|
|
1072
|
-
continue;
|
|
1073
|
-
}
|
|
1074
|
-
if (!includeExpired && this.isTokenExpired(expiryDecoded)) {
|
|
1075
|
-
continue;
|
|
1076
|
-
}
|
|
1077
|
-
return {
|
|
1078
|
-
tx: tx.toBEEF(),
|
|
1079
|
-
txid: out.outpoint.split('.')[0],
|
|
1080
|
-
outputIndex: parseInt(out.outpoint.split('.')[1], 10),
|
|
1081
|
-
outputScript: tx.outputs[Number(outputIndexStr)].lockingScript.toHex(),
|
|
1082
|
-
satoshis: out.satoshis,
|
|
1083
|
-
originator,
|
|
1084
|
-
rawOriginator: domainDecoded,
|
|
1085
|
-
privileged,
|
|
1086
|
-
verifier: verifierDec,
|
|
1087
|
-
certType: typeDecoded,
|
|
1088
|
-
certFields: allFields,
|
|
1089
|
-
expiry: expiryDecoded
|
|
1090
|
-
};
|
|
1091
|
-
}
|
|
1092
|
-
}
|
|
1093
|
-
return undefined;
|
|
1094
|
-
}
|
|
1095
|
-
/** Looks for a DSAP token matching origin, returning the first one found. */
|
|
1096
|
-
async findSpendingToken(originator, originatorLookupValues) {
|
|
1097
|
-
const originsToTry = (originatorLookupValues === null || originatorLookupValues === void 0 ? void 0 : originatorLookupValues.length) ? originatorLookupValues : [originator];
|
|
1098
|
-
for (const originTag of originsToTry) {
|
|
1099
|
-
const result = await this.underlying.listOutputs({
|
|
1100
|
-
basket: BASKET_MAP.spending,
|
|
1101
|
-
tags: [`originator ${originTag}`],
|
|
1102
|
-
tagQueryMode: 'all',
|
|
1103
|
-
include: 'entire transactions'
|
|
1104
|
-
}, this.adminOriginator);
|
|
1105
|
-
for (const out of result.outputs) {
|
|
1106
|
-
const [txid, outputIndexStr] = out.outpoint.split('.');
|
|
1107
|
-
const tx = sdk_1.Transaction.fromBEEF(result.BEEF, txid);
|
|
1108
|
-
const dec = sdk_1.PushDrop.decode(tx.outputs[Number(outputIndexStr)].lockingScript);
|
|
1109
|
-
if (!(dec === null || dec === void 0 ? void 0 : dec.fields) || dec.fields.length < 2)
|
|
1110
|
-
continue;
|
|
1111
|
-
const domainRaw = dec.fields[0];
|
|
1112
|
-
const amtRaw = dec.fields[1];
|
|
1113
|
-
const domainDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(domainRaw));
|
|
1114
|
-
const normalizedDomain = this.normalizeOriginator(domainDecoded);
|
|
1115
|
-
if (normalizedDomain !== originator)
|
|
1116
|
-
continue;
|
|
1117
|
-
const amtDecodedStr = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(amtRaw));
|
|
1118
|
-
const authorizedAmount = parseInt(amtDecodedStr, 10);
|
|
1119
|
-
return {
|
|
1120
|
-
tx: tx.toBEEF(),
|
|
1121
|
-
txid: out.outpoint.split('.')[0],
|
|
1122
|
-
outputIndex: parseInt(out.outpoint.split('.')[1], 10),
|
|
1123
|
-
outputScript: tx.outputs[Number(outputIndexStr)].lockingScript.toHex(),
|
|
1124
|
-
satoshis: out.satoshis,
|
|
1125
|
-
originator,
|
|
1126
|
-
rawOriginator: domainDecoded,
|
|
1127
|
-
authorizedAmount,
|
|
1128
|
-
expiry: 0 // Not time-limited, monthly authorization
|
|
1129
|
-
};
|
|
1130
|
-
}
|
|
1131
|
-
}
|
|
1132
|
-
return undefined;
|
|
1133
|
-
}
|
|
1134
|
-
/**
|
|
1135
|
-
* Returns the current month and year in UTC as a string in the format "YYYY-MM".
|
|
1136
|
-
*
|
|
1137
|
-
* @returns {string} The current month and year in UTC.
|
|
1138
|
-
*/
|
|
1139
|
-
getCurrentMonthYearUTC() {
|
|
1140
|
-
const now = new Date();
|
|
1141
|
-
const year = now.getUTCFullYear();
|
|
1142
|
-
const month = (now.getUTCMonth() + 1).toString().padStart(2, '0'); // Ensure 2-digit month
|
|
1143
|
-
return `${year}-${month}`;
|
|
1144
|
-
}
|
|
1145
|
-
/**
|
|
1146
|
-
* Returns spending for an originator in the current calendar month.
|
|
1147
|
-
*/
|
|
1148
|
-
async querySpentSince(token) {
|
|
1149
|
-
const labelOrigins = this.buildOriginatorLookupValues(token.rawOriginator, token.originator);
|
|
1150
|
-
let total = 0;
|
|
1151
|
-
for (const labelOrigin of labelOrigins) {
|
|
1152
|
-
const { actions } = await this.underlying.listActions({
|
|
1153
|
-
labels: [`admin originator ${labelOrigin}`, `admin month ${this.getCurrentMonthYearUTC()}`],
|
|
1154
|
-
labelQueryMode: 'all'
|
|
1155
|
-
}, this.adminOriginator);
|
|
1156
|
-
total += actions.reduce((a, e) => a + e.satoshis, 0);
|
|
1157
|
-
}
|
|
1158
|
-
return total;
|
|
1159
|
-
}
|
|
1160
|
-
/* ---------------------------------------------------------------------
|
|
1161
|
-
* 5) CREATE / RENEW / REVOKE PERMISSION TOKENS ON CHAIN
|
|
1162
|
-
* --------------------------------------------------------------------- */
|
|
1163
|
-
/**
|
|
1164
|
-
* Creates a brand-new permission token as a single-output PushDrop script in the relevant admin basket.
|
|
1165
|
-
*
|
|
1166
|
-
* The main difference between each type of token is in the "fields" we store in the PushDrop script.
|
|
1167
|
-
*
|
|
1168
|
-
* @param r The permission request
|
|
1169
|
-
* @param expiry The expiry epoch time
|
|
1170
|
-
* @param amount For DSAP, the authorized spending limit
|
|
1171
|
-
*/
|
|
1172
|
-
async createPermissionOnChain(r, expiry, amount) {
|
|
1173
|
-
const normalizedOriginator = this.normalizeOriginator(r.originator) || r.originator;
|
|
1174
|
-
r.originator = normalizedOriginator;
|
|
1175
|
-
const basketName = BASKET_MAP[r.type];
|
|
1176
|
-
if (!basketName)
|
|
1177
|
-
return;
|
|
1178
|
-
// Build the array of encrypted fields for the PushDrop script
|
|
1179
|
-
const fields = await this.buildPushdropFields(r, expiry, amount);
|
|
1180
|
-
// Construct the script. We do a simple P2PK check. We ask `PushDrop.lock(...)`
|
|
1181
|
-
// to create a script with a single OP_CHECKSIG verifying ownership to redeem.
|
|
1182
|
-
const script = await new sdk_1.PushDrop(this.underlying).lock(fields, WalletPermissionsManager.PERM_TOKEN_ENCRYPTION_PROTOCOL, '1', 'self', true, true);
|
|
1183
|
-
// Create tags
|
|
1184
|
-
const tags = this.buildTagsForRequest(r);
|
|
1185
|
-
// Build a transaction with exactly one output, no explicit inputs since the wallet
|
|
1186
|
-
// can internally fund it from its balance.
|
|
1187
|
-
await this.createAction({
|
|
1188
|
-
description: `Grant ${r.type} permission`,
|
|
1189
|
-
outputs: [
|
|
1190
|
-
{
|
|
1191
|
-
lockingScript: script.toHex(),
|
|
1192
|
-
satoshis: 1,
|
|
1193
|
-
outputDescription: `${r.type} permission token`,
|
|
1194
|
-
basket: basketName,
|
|
1195
|
-
tags
|
|
1196
|
-
}
|
|
1197
|
-
],
|
|
1198
|
-
options: {
|
|
1199
|
-
acceptDelayedBroadcast: false
|
|
1200
|
-
}
|
|
1201
|
-
}, this.adminOriginator);
|
|
1202
|
-
}
|
|
1203
|
-
async coalescePermissionTokens(oldTokens, newScript, opts) {
|
|
1204
|
-
var _a;
|
|
1205
|
-
if (!(oldTokens === null || oldTokens === void 0 ? void 0 : oldTokens.length))
|
|
1206
|
-
throw new Error('No permission tokens to coalesce');
|
|
1207
|
-
if (oldTokens.length < 2)
|
|
1208
|
-
throw new Error('Need at least 2 tokens to coalesce');
|
|
1209
|
-
// 1) Create a signable action with N inputs and a single renewed output
|
|
1210
|
-
// Merge all input token BEEFs into a single BEEF structure
|
|
1211
|
-
const inputBeef = new sdk_1.Beef();
|
|
1212
|
-
for (const token of oldTokens) {
|
|
1213
|
-
inputBeef.mergeBeef(sdk_1.Beef.fromBinary(token.tx));
|
|
1214
|
-
}
|
|
1215
|
-
const { signableTransaction } = await this.createAction({
|
|
1216
|
-
description: (_a = opts === null || opts === void 0 ? void 0 : opts.description) !== null && _a !== void 0 ? _a : `Coalesce ${oldTokens.length} permission tokens`,
|
|
1217
|
-
inputBEEF: inputBeef.toBinary(),
|
|
1218
|
-
inputs: oldTokens.map((t, i) => ({
|
|
1219
|
-
outpoint: `${t.txid}.${t.outputIndex}`,
|
|
1220
|
-
unlockingScriptLength: 74,
|
|
1221
|
-
inputDescription: `Consume permission token #${i + 1}`
|
|
1222
|
-
})),
|
|
1223
|
-
outputs: [
|
|
1224
|
-
{
|
|
1225
|
-
lockingScript: newScript.toHex(),
|
|
1226
|
-
satoshis: 1,
|
|
1227
|
-
outputDescription: 'Renewed permission token',
|
|
1228
|
-
...((opts === null || opts === void 0 ? void 0 : opts.basket) ? { basket: opts.basket } : {}),
|
|
1229
|
-
...((opts === null || opts === void 0 ? void 0 : opts.tags) ? { tags: opts.tags } : {})
|
|
1230
|
-
}
|
|
1231
|
-
],
|
|
1232
|
-
options: {
|
|
1233
|
-
acceptDelayedBroadcast: false,
|
|
1234
|
-
randomizeOutputs: false,
|
|
1235
|
-
signAndProcess: false
|
|
1236
|
-
}
|
|
1237
|
-
}, this.adminOriginator);
|
|
1238
|
-
if (!(signableTransaction === null || signableTransaction === void 0 ? void 0 : signableTransaction.reference) || !signableTransaction.tx) {
|
|
1239
|
-
throw new Error('Failed to create signable transaction');
|
|
1240
|
-
}
|
|
1241
|
-
// 2) Sign each input - each token needs its own unlocker with the correct locking script
|
|
1242
|
-
const partialTx = sdk_1.Transaction.fromAtomicBEEF(signableTransaction.tx);
|
|
1243
|
-
const pushdrop = new sdk_1.PushDrop(this.underlying);
|
|
1244
|
-
const spends = {};
|
|
1245
|
-
for (let i = 0; i < oldTokens.length; i++) {
|
|
1246
|
-
const token = oldTokens[i];
|
|
1247
|
-
// Each token requires its own unlocker with the specific locking script
|
|
1248
|
-
const unlocker = pushdrop.unlock(WalletPermissionsManager.PERM_TOKEN_ENCRYPTION_PROTOCOL, '1', 'self', 'all', false, 1, sdk_1.LockingScript.fromHex(token.outputScript));
|
|
1249
|
-
const unlockingScript = await unlocker.sign(partialTx, i);
|
|
1250
|
-
spends[i] = { unlockingScript: unlockingScript.toHex() };
|
|
1251
|
-
}
|
|
1252
|
-
// 3) Finalize the action
|
|
1253
|
-
const { txid } = await this.underlying.signAction({
|
|
1254
|
-
reference: signableTransaction.reference,
|
|
1255
|
-
spends
|
|
1256
|
-
});
|
|
1257
|
-
if (!txid)
|
|
1258
|
-
throw new Error('Failed to finalize coalescing transaction');
|
|
1259
|
-
return txid;
|
|
1260
|
-
}
|
|
1261
|
-
/**
|
|
1262
|
-
* Renews a permission token by spending the old token as input and creating a new token output.
|
|
1263
|
-
* This invalidates the old token and replaces it with a new one.
|
|
1264
|
-
*
|
|
1265
|
-
* @param oldToken The old token to consume
|
|
1266
|
-
* @param r The permission request being renewed
|
|
1267
|
-
* @param newExpiry The new expiry epoch time
|
|
1268
|
-
* @param newAmount For DSAP, the new authorized amount
|
|
1269
|
-
*/
|
|
1270
|
-
async renewPermissionOnChain(oldToken, r, newExpiry, newAmount) {
|
|
1271
|
-
r.originator = this.normalizeOriginator(r.originator) || r.originator;
|
|
1272
|
-
// 1) build new fields
|
|
1273
|
-
const newFields = await this.buildPushdropFields(r, newExpiry, newAmount);
|
|
1274
|
-
// 2) new script
|
|
1275
|
-
const newScript = await new sdk_1.PushDrop(this.underlying).lock(newFields, WalletPermissionsManager.PERM_TOKEN_ENCRYPTION_PROTOCOL, '1', 'self', true, true);
|
|
1276
|
-
const tags = this.buildTagsForRequest(r);
|
|
1277
|
-
// Check if there are multiple old tokens for the same parameters (shouldn't usually happen)
|
|
1278
|
-
const oldTokens = await this.findAllProtocolTokens(oldToken.originator, oldToken.privileged, [oldToken.securityLevel, oldToken.protocol], oldToken.counterparty, this.buildOriginatorLookupValues(oldToken.rawOriginator, oldToken.originator));
|
|
1279
|
-
// If so, coalesce them into a single token first, to avoid bloat
|
|
1280
|
-
if (oldTokens.length > 1) {
|
|
1281
|
-
await this.coalescePermissionTokens(oldTokens, newScript, {
|
|
1282
|
-
tags,
|
|
1283
|
-
basket: BASKET_MAP[r.type],
|
|
1284
|
-
description: `Coalesce ${r.type} permission tokens`
|
|
1285
|
-
});
|
|
1286
|
-
}
|
|
1287
|
-
else {
|
|
1288
|
-
// Otherwise, just proceed with the single-token renewal
|
|
1289
|
-
// 3) For BRC-100, we do a "createAction" with a partial input referencing oldToken
|
|
1290
|
-
// plus a single new output. We'll hydrate the template, then signAction for the wallet to finalize.
|
|
1291
|
-
const oldOutpoint = `${oldToken.txid}.${oldToken.outputIndex}`;
|
|
1292
|
-
const { signableTransaction } = await this.createAction({
|
|
1293
|
-
description: `Renew ${r.type} permission`,
|
|
1294
|
-
inputBEEF: oldToken.tx,
|
|
1295
|
-
inputs: [
|
|
1296
|
-
{
|
|
1297
|
-
outpoint: oldOutpoint,
|
|
1298
|
-
unlockingScriptLength: 73, // length of signature
|
|
1299
|
-
inputDescription: `Consume old ${r.type} token`
|
|
1300
|
-
}
|
|
1301
|
-
],
|
|
1302
|
-
outputs: [
|
|
1303
|
-
{
|
|
1304
|
-
lockingScript: newScript.toHex(),
|
|
1305
|
-
satoshis: 1,
|
|
1306
|
-
outputDescription: `Renewed ${r.type} permission token`,
|
|
1307
|
-
basket: BASKET_MAP[r.type],
|
|
1308
|
-
tags
|
|
1309
|
-
}
|
|
1310
|
-
],
|
|
1311
|
-
options: {
|
|
1312
|
-
acceptDelayedBroadcast: false
|
|
1313
|
-
}
|
|
1314
|
-
}, this.adminOriginator);
|
|
1315
|
-
const tx = sdk_1.Transaction.fromBEEF(signableTransaction.tx);
|
|
1316
|
-
const unlocker = new sdk_1.PushDrop(this.underlying).unlock(WalletPermissionsManager.PERM_TOKEN_ENCRYPTION_PROTOCOL, '1', 'self', 'all', false, 1, sdk_1.LockingScript.fromHex(oldToken.outputScript));
|
|
1317
|
-
const unlockingScript = await unlocker.sign(tx, 0);
|
|
1318
|
-
await this.underlying.signAction({
|
|
1319
|
-
reference: signableTransaction.reference,
|
|
1320
|
-
spends: {
|
|
1321
|
-
0: {
|
|
1322
|
-
unlockingScript: unlockingScript.toHex()
|
|
1323
|
-
}
|
|
1324
|
-
}
|
|
1325
|
-
});
|
|
1326
|
-
}
|
|
1327
|
-
}
|
|
1328
|
-
/**
|
|
1329
|
-
* Builds the encrypted array of fields for a PushDrop permission token
|
|
1330
|
-
* (protocol / basket / certificate / spending).
|
|
1331
|
-
*/
|
|
1332
|
-
async buildPushdropFields(r, expiry, amount) {
|
|
1333
|
-
var _a;
|
|
1334
|
-
switch (r.type) {
|
|
1335
|
-
case 'protocol': {
|
|
1336
|
-
const [secLevel, protoName] = r.protocolID;
|
|
1337
|
-
return [
|
|
1338
|
-
await this.encryptPermissionTokenField(r.originator), // domain
|
|
1339
|
-
await this.encryptPermissionTokenField(String(expiry)), // expiry
|
|
1340
|
-
await this.encryptPermissionTokenField(r.privileged === true ? 'true' : 'false'),
|
|
1341
|
-
await this.encryptPermissionTokenField(String(secLevel)),
|
|
1342
|
-
await this.encryptPermissionTokenField(protoName),
|
|
1343
|
-
await this.encryptPermissionTokenField(r.counterparty)
|
|
1344
|
-
];
|
|
1345
|
-
}
|
|
1346
|
-
case 'basket': {
|
|
1347
|
-
return [
|
|
1348
|
-
await this.encryptPermissionTokenField(r.originator),
|
|
1349
|
-
await this.encryptPermissionTokenField(String(expiry)),
|
|
1350
|
-
await this.encryptPermissionTokenField(r.basket)
|
|
1351
|
-
];
|
|
1352
|
-
}
|
|
1353
|
-
case 'certificate': {
|
|
1354
|
-
const { certType, fields, verifier } = r.certificate;
|
|
1355
|
-
return [
|
|
1356
|
-
await this.encryptPermissionTokenField(r.originator),
|
|
1357
|
-
await this.encryptPermissionTokenField(String(expiry)),
|
|
1358
|
-
await this.encryptPermissionTokenField(r.privileged ? 'true' : 'false'),
|
|
1359
|
-
await this.encryptPermissionTokenField(certType),
|
|
1360
|
-
await this.encryptPermissionTokenField(JSON.stringify(fields)),
|
|
1361
|
-
await this.encryptPermissionTokenField(verifier)
|
|
1362
|
-
];
|
|
1363
|
-
}
|
|
1364
|
-
case 'spending': {
|
|
1365
|
-
// DSAP
|
|
1366
|
-
const authAmt = amount !== null && amount !== void 0 ? amount : (((_a = r.spending) === null || _a === void 0 ? void 0 : _a.satoshis) || 0);
|
|
1367
|
-
return [
|
|
1368
|
-
await this.encryptPermissionTokenField(r.originator),
|
|
1369
|
-
await this.encryptPermissionTokenField(String(authAmt))
|
|
1370
|
-
];
|
|
1371
|
-
}
|
|
1372
|
-
}
|
|
1373
|
-
}
|
|
1374
|
-
/**
|
|
1375
|
-
* Helper to build an array of tags for the new output, matching the user request's
|
|
1376
|
-
* origin, basket, privileged, protocol name, etc.
|
|
1377
|
-
*/
|
|
1378
|
-
buildTagsForRequest(r) {
|
|
1379
|
-
const tags = [`originator ${r.originator}`];
|
|
1380
|
-
switch (r.type) {
|
|
1381
|
-
case 'protocol': {
|
|
1382
|
-
tags.push(`privileged ${!!r.privileged}`);
|
|
1383
|
-
tags.push(`protocolName ${r.protocolID[1]}`);
|
|
1384
|
-
tags.push(`protocolSecurityLevel ${r.protocolID[0]}`);
|
|
1385
|
-
if (r.protocolID[0] === 2) {
|
|
1386
|
-
tags.push(`counterparty ${r.counterparty}`);
|
|
1387
|
-
}
|
|
1388
|
-
break;
|
|
1389
|
-
}
|
|
1390
|
-
case 'basket': {
|
|
1391
|
-
tags.push(`basket ${r.basket}`);
|
|
1392
|
-
break;
|
|
1393
|
-
}
|
|
1394
|
-
case 'certificate': {
|
|
1395
|
-
tags.push(`privileged ${!!r.privileged}`);
|
|
1396
|
-
tags.push(`type ${r.certificate.certType}`);
|
|
1397
|
-
tags.push(`verifier ${r.certificate.verifier}`);
|
|
1398
|
-
break;
|
|
1399
|
-
}
|
|
1400
|
-
case 'spending': {
|
|
1401
|
-
// Only 'originator' is strictly required as a tag.
|
|
1402
|
-
break;
|
|
1403
|
-
}
|
|
1404
|
-
}
|
|
1405
|
-
return tags;
|
|
1406
|
-
}
|
|
1407
|
-
/* ---------------------------------------------------------------------
|
|
1408
|
-
* 6) PUBLIC "LIST/HAS/REVOKE" METHODS
|
|
1409
|
-
* --------------------------------------------------------------------- */
|
|
1410
|
-
/**
|
|
1411
|
-
* Lists all protocol permission tokens (DPACP) with optional filters.
|
|
1412
|
-
* @param originator Optional originator domain to filter by
|
|
1413
|
-
* @param privileged Optional boolean to filter by privileged status
|
|
1414
|
-
* @param protocolName Optional protocol name to filter by
|
|
1415
|
-
* @param protocolSecurityLevel Optional protocol security level to filter by
|
|
1416
|
-
* @param counterparty Optional counterparty to filter by
|
|
1417
|
-
* @returns Array of permission tokens that match the filter criteria
|
|
1418
|
-
*/
|
|
1419
|
-
async listProtocolPermissions({ originator, privileged, protocolName, protocolSecurityLevel, counterparty } = {}) {
|
|
1420
|
-
const basketName = BASKET_MAP.protocol;
|
|
1421
|
-
const baseTags = [];
|
|
1422
|
-
if (privileged !== undefined) {
|
|
1423
|
-
baseTags.push(`privileged ${!!privileged}`);
|
|
1424
|
-
}
|
|
1425
|
-
if (protocolName) {
|
|
1426
|
-
baseTags.push(`protocolName ${protocolName}`);
|
|
1427
|
-
}
|
|
1428
|
-
if (protocolSecurityLevel !== undefined) {
|
|
1429
|
-
baseTags.push(`protocolSecurityLevel ${protocolSecurityLevel}`);
|
|
1430
|
-
}
|
|
1431
|
-
if (counterparty) {
|
|
1432
|
-
baseTags.push(`counterparty ${counterparty}`);
|
|
1433
|
-
}
|
|
1434
|
-
const originFilter = originator ? this.prepareOriginator(originator) : undefined;
|
|
1435
|
-
const originVariants = originFilter ? originFilter.lookupValues : [undefined];
|
|
1436
|
-
const seen = new Set();
|
|
1437
|
-
const tokens = [];
|
|
1438
|
-
for (const originTag of originVariants) {
|
|
1439
|
-
const tags = [...baseTags];
|
|
1440
|
-
if (originTag) {
|
|
1441
|
-
tags.push(`originator ${originTag}`);
|
|
1442
|
-
}
|
|
1443
|
-
const result = await this.underlying.listOutputs({
|
|
1444
|
-
basket: basketName,
|
|
1445
|
-
tags,
|
|
1446
|
-
tagQueryMode: 'all',
|
|
1447
|
-
include: 'entire transactions',
|
|
1448
|
-
limit: 100
|
|
1449
|
-
}, this.adminOriginator);
|
|
1450
|
-
for (const out of result.outputs) {
|
|
1451
|
-
if (seen.has(out.outpoint))
|
|
1452
|
-
continue;
|
|
1453
|
-
const [txid, outputIndexStr] = out.outpoint.split('.');
|
|
1454
|
-
const tx = sdk_1.Transaction.fromBEEF(result.BEEF, txid);
|
|
1455
|
-
const dec = sdk_1.PushDrop.decode(tx.outputs[Number(outputIndexStr)].lockingScript);
|
|
1456
|
-
if (!(dec === null || dec === void 0 ? void 0 : dec.fields) || dec.fields.length < 6)
|
|
1457
|
-
continue;
|
|
1458
|
-
const [domainRaw, expiryRaw, privRaw, secRaw, protoRaw, cptyRaw] = dec.fields;
|
|
1459
|
-
const domainDec = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(domainRaw));
|
|
1460
|
-
const normalizedDomain = this.normalizeOriginator(domainDec);
|
|
1461
|
-
if (originFilter && normalizedDomain !== originFilter.normalized) {
|
|
1462
|
-
continue;
|
|
1463
|
-
}
|
|
1464
|
-
const expiryDec = parseInt(sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(expiryRaw)), 10);
|
|
1465
|
-
const privDec = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(privRaw)) === 'true';
|
|
1466
|
-
const secDec = parseInt(sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(secRaw)), 10);
|
|
1467
|
-
const protoDec = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(protoRaw));
|
|
1468
|
-
const cptyDec = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(cptyRaw));
|
|
1469
|
-
seen.add(out.outpoint);
|
|
1470
|
-
tokens.push({
|
|
1471
|
-
tx: tx.toBEEF(),
|
|
1472
|
-
txid: out.outpoint.split('.')[0],
|
|
1473
|
-
outputIndex: parseInt(out.outpoint.split('.')[1], 10),
|
|
1474
|
-
outputScript: tx.outputs[Number(outputIndexStr)].lockingScript.toHex(),
|
|
1475
|
-
satoshis: out.satoshis,
|
|
1476
|
-
originator: normalizedDomain,
|
|
1477
|
-
rawOriginator: domainDec,
|
|
1478
|
-
expiry: expiryDec,
|
|
1479
|
-
privileged: privDec,
|
|
1480
|
-
securityLevel: secDec,
|
|
1481
|
-
protocol: protoDec,
|
|
1482
|
-
counterparty: cptyDec
|
|
1483
|
-
});
|
|
1484
|
-
}
|
|
1485
|
-
}
|
|
1486
|
-
return tokens;
|
|
1487
|
-
}
|
|
1488
|
-
/**
|
|
1489
|
-
* Returns true if the originator already holds a valid unexpired protocol permission.
|
|
1490
|
-
* This calls `ensureProtocolPermission` with `seekPermission=false`, so it won't prompt.
|
|
1491
|
-
*/
|
|
1492
|
-
async hasProtocolPermission(params) {
|
|
1493
|
-
try {
|
|
1494
|
-
await this.ensureProtocolPermission({
|
|
1495
|
-
...params,
|
|
1496
|
-
reason: 'hasProtocolPermission',
|
|
1497
|
-
seekPermission: false,
|
|
1498
|
-
usageType: 'generic'
|
|
1499
|
-
});
|
|
1500
|
-
return true;
|
|
1501
|
-
}
|
|
1502
|
-
catch (_a) {
|
|
1503
|
-
return false;
|
|
1504
|
-
}
|
|
1505
|
-
}
|
|
1506
|
-
/**
|
|
1507
|
-
* Lists basket permission tokens (DBAP) for a given originator or basket (or for all if not specified).
|
|
1508
|
-
* @param params.originator Optional originator to filter by
|
|
1509
|
-
* @param params.basket Optional basket name to filter by
|
|
1510
|
-
* @returns Array of permission tokens that match the filter criteria
|
|
1511
|
-
*/
|
|
1512
|
-
async listBasketAccess(params = {}) {
|
|
1513
|
-
const basketName = BASKET_MAP.basket;
|
|
1514
|
-
const baseTags = [];
|
|
1515
|
-
if (params.basket) {
|
|
1516
|
-
baseTags.push(`basket ${params.basket}`);
|
|
1517
|
-
}
|
|
1518
|
-
const originFilter = params.originator ? this.prepareOriginator(params.originator) : undefined;
|
|
1519
|
-
const originVariants = originFilter ? originFilter.lookupValues : [undefined];
|
|
1520
|
-
const seen = new Set();
|
|
1521
|
-
const tokens = [];
|
|
1522
|
-
for (const originTag of originVariants) {
|
|
1523
|
-
const tags = [...baseTags];
|
|
1524
|
-
if (originTag) {
|
|
1525
|
-
tags.push(`originator ${originTag}`);
|
|
1526
|
-
}
|
|
1527
|
-
const result = await this.underlying.listOutputs({
|
|
1528
|
-
basket: basketName,
|
|
1529
|
-
tags,
|
|
1530
|
-
tagQueryMode: 'all',
|
|
1531
|
-
include: 'entire transactions',
|
|
1532
|
-
limit: 10000
|
|
1533
|
-
}, this.adminOriginator);
|
|
1534
|
-
for (const out of result.outputs) {
|
|
1535
|
-
if (seen.has(out.outpoint))
|
|
1536
|
-
continue;
|
|
1537
|
-
const [txid, outputIndexStr] = out.outpoint.split('.');
|
|
1538
|
-
const tx = sdk_1.Transaction.fromBEEF(result.BEEF, txid);
|
|
1539
|
-
const dec = sdk_1.PushDrop.decode(tx.outputs[Number(outputIndexStr)].lockingScript);
|
|
1540
|
-
if (!(dec === null || dec === void 0 ? void 0 : dec.fields) || dec.fields.length < 3)
|
|
1541
|
-
continue;
|
|
1542
|
-
const [domainRaw, expiryRaw, basketRaw] = dec.fields;
|
|
1543
|
-
const domainDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(domainRaw));
|
|
1544
|
-
const normalizedDomain = this.normalizeOriginator(domainDecoded);
|
|
1545
|
-
if (originFilter && normalizedDomain !== originFilter.normalized) {
|
|
1546
|
-
continue;
|
|
1547
|
-
}
|
|
1548
|
-
const expiryDecoded = parseInt(sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(expiryRaw)), 10);
|
|
1549
|
-
const basketDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(basketRaw));
|
|
1550
|
-
seen.add(out.outpoint);
|
|
1551
|
-
tokens.push({
|
|
1552
|
-
tx: tx.toBEEF(),
|
|
1553
|
-
txid: out.outpoint.split('.')[0],
|
|
1554
|
-
outputIndex: parseInt(out.outpoint.split('.')[1], 10),
|
|
1555
|
-
satoshis: out.satoshis,
|
|
1556
|
-
outputScript: tx.outputs[Number(outputIndexStr)].lockingScript.toHex(),
|
|
1557
|
-
originator: normalizedDomain,
|
|
1558
|
-
rawOriginator: domainDecoded,
|
|
1559
|
-
basketName: basketDecoded,
|
|
1560
|
-
expiry: expiryDecoded
|
|
1561
|
-
});
|
|
1562
|
-
}
|
|
1563
|
-
}
|
|
1564
|
-
return tokens;
|
|
1565
|
-
}
|
|
1566
|
-
/**
|
|
1567
|
-
* Returns `true` if the originator already holds a valid unexpired basket permission for `basket`.
|
|
1568
|
-
*/
|
|
1569
|
-
async hasBasketAccess(params) {
|
|
1570
|
-
try {
|
|
1571
|
-
await this.ensureBasketAccess({
|
|
1572
|
-
originator: params.originator,
|
|
1573
|
-
basket: params.basket,
|
|
1574
|
-
seekPermission: false,
|
|
1575
|
-
usageType: 'insertion' // TODO: Consider a generic case for "has"
|
|
1576
|
-
});
|
|
1577
|
-
return true;
|
|
1578
|
-
}
|
|
1579
|
-
catch (_a) {
|
|
1580
|
-
return false;
|
|
1581
|
-
}
|
|
1582
|
-
}
|
|
1583
|
-
/**
|
|
1584
|
-
* Lists spending authorization tokens (DSAP) for a given originator (or all).
|
|
1585
|
-
*/
|
|
1586
|
-
async listSpendingAuthorizations(params) {
|
|
1587
|
-
const basketName = BASKET_MAP.spending;
|
|
1588
|
-
const tags = [];
|
|
1589
|
-
if (params.originator) {
|
|
1590
|
-
tags.push(`originator ${params.originator}`);
|
|
1591
|
-
}
|
|
1592
|
-
const result = await this.underlying.listOutputs({
|
|
1593
|
-
basket: basketName,
|
|
1594
|
-
tags,
|
|
1595
|
-
tagQueryMode: 'all',
|
|
1596
|
-
include: 'entire transactions',
|
|
1597
|
-
limit: 10000
|
|
1598
|
-
}, this.adminOriginator);
|
|
1599
|
-
const tokens = [];
|
|
1600
|
-
for (const out of result.outputs) {
|
|
1601
|
-
const [txid, outputIndexStr] = out.outpoint.split('.');
|
|
1602
|
-
const tx = sdk_1.Transaction.fromBEEF(result.BEEF, txid);
|
|
1603
|
-
const dec = sdk_1.PushDrop.decode(tx.outputs[Number(outputIndexStr)].lockingScript);
|
|
1604
|
-
if (!(dec === null || dec === void 0 ? void 0 : dec.fields) || dec.fields.length < 2)
|
|
1605
|
-
continue;
|
|
1606
|
-
const [domainRaw, amtRaw] = dec.fields;
|
|
1607
|
-
const domainDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(domainRaw));
|
|
1608
|
-
const amtDecodedStr = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(amtRaw));
|
|
1609
|
-
const authorizedAmount = parseInt(amtDecodedStr, 10);
|
|
1610
|
-
tokens.push({
|
|
1611
|
-
tx: tx.toBEEF(),
|
|
1612
|
-
txid: out.outpoint.split('.')[0],
|
|
1613
|
-
outputIndex: parseInt(out.outpoint.split('.')[1], 10),
|
|
1614
|
-
satoshis: out.satoshis,
|
|
1615
|
-
outputScript: tx.outputs[Number(outputIndexStr)].lockingScript.toHex(),
|
|
1616
|
-
originator: domainDecoded,
|
|
1617
|
-
authorizedAmount,
|
|
1618
|
-
expiry: 0
|
|
1619
|
-
});
|
|
1620
|
-
}
|
|
1621
|
-
return tokens;
|
|
1622
|
-
}
|
|
1623
|
-
/**
|
|
1624
|
-
* Returns `true` if the originator already holds a valid spending authorization token
|
|
1625
|
-
* with enough available monthly spend. We do not prompt (seekPermission=false).
|
|
1626
|
-
*/
|
|
1627
|
-
async hasSpendingAuthorization(params) {
|
|
1628
|
-
try {
|
|
1629
|
-
await this.ensureSpendingAuthorization({
|
|
1630
|
-
originator: params.originator,
|
|
1631
|
-
satoshis: params.satoshis,
|
|
1632
|
-
seekPermission: false
|
|
1633
|
-
});
|
|
1634
|
-
return true;
|
|
1635
|
-
}
|
|
1636
|
-
catch (_a) {
|
|
1637
|
-
return false;
|
|
1638
|
-
}
|
|
1639
|
-
}
|
|
1640
|
-
/**
|
|
1641
|
-
* Lists certificate permission tokens (DCAP) with optional filters.
|
|
1642
|
-
* @param originator Optional originator domain to filter by
|
|
1643
|
-
* @param privileged Optional boolean to filter by privileged status
|
|
1644
|
-
* @param certType Optional certificate type to filter by
|
|
1645
|
-
* @param verifier Optional verifier to filter by
|
|
1646
|
-
* @returns Array of permission tokens that match the filter criteria
|
|
1647
|
-
*/
|
|
1648
|
-
async listCertificateAccess(params = {}) {
|
|
1649
|
-
const basketName = BASKET_MAP.certificate;
|
|
1650
|
-
const baseTags = [];
|
|
1651
|
-
if (params.privileged !== undefined) {
|
|
1652
|
-
baseTags.push(`privileged ${!!params.privileged}`);
|
|
1653
|
-
}
|
|
1654
|
-
if (params.certType) {
|
|
1655
|
-
baseTags.push(`type ${params.certType}`);
|
|
1656
|
-
}
|
|
1657
|
-
if (params.verifier) {
|
|
1658
|
-
baseTags.push(`verifier ${params.verifier}`);
|
|
1659
|
-
}
|
|
1660
|
-
const originFilter = params.originator ? this.prepareOriginator(params.originator) : undefined;
|
|
1661
|
-
const originVariants = originFilter ? originFilter.lookupValues : [undefined];
|
|
1662
|
-
const seen = new Set();
|
|
1663
|
-
const tokens = [];
|
|
1664
|
-
for (const originTag of originVariants) {
|
|
1665
|
-
const tags = [...baseTags];
|
|
1666
|
-
if (originTag) {
|
|
1667
|
-
tags.push(`originator ${originTag}`);
|
|
1668
|
-
}
|
|
1669
|
-
const result = await this.underlying.listOutputs({
|
|
1670
|
-
basket: basketName,
|
|
1671
|
-
tags,
|
|
1672
|
-
tagQueryMode: 'all',
|
|
1673
|
-
include: 'entire transactions',
|
|
1674
|
-
limit: 10000
|
|
1675
|
-
}, this.adminOriginator);
|
|
1676
|
-
for (const out of result.outputs) {
|
|
1677
|
-
if (seen.has(out.outpoint))
|
|
1678
|
-
continue;
|
|
1679
|
-
const [txid, outputIndexStr] = out.outpoint.split('.');
|
|
1680
|
-
const tx = sdk_1.Transaction.fromBEEF(result.BEEF, txid);
|
|
1681
|
-
const dec = sdk_1.PushDrop.decode(tx.outputs[Number(outputIndexStr)].lockingScript);
|
|
1682
|
-
if (!(dec === null || dec === void 0 ? void 0 : dec.fields) || dec.fields.length < 6)
|
|
1683
|
-
continue;
|
|
1684
|
-
const [domainRaw, expiryRaw, privRaw, typeRaw, fieldsRaw, verifierRaw] = dec.fields;
|
|
1685
|
-
const domainDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(domainRaw));
|
|
1686
|
-
const normalizedDomain = this.normalizeOriginator(domainDecoded);
|
|
1687
|
-
if (originFilter && normalizedDomain !== originFilter.normalized) {
|
|
1688
|
-
continue;
|
|
1689
|
-
}
|
|
1690
|
-
const expiryDecoded = parseInt(sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(expiryRaw)), 10);
|
|
1691
|
-
const privDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(privRaw)) === 'true';
|
|
1692
|
-
const typeDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(typeRaw));
|
|
1693
|
-
const verifierDec = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(verifierRaw));
|
|
1694
|
-
const fieldsJson = await this.decryptPermissionTokenField(fieldsRaw);
|
|
1695
|
-
const allFields = JSON.parse(sdk_1.Utils.toUTF8(fieldsJson));
|
|
1696
|
-
seen.add(out.outpoint);
|
|
1697
|
-
tokens.push({
|
|
1698
|
-
tx: tx.toBEEF(),
|
|
1699
|
-
txid: out.outpoint.split('.')[0],
|
|
1700
|
-
outputIndex: parseInt(out.outpoint.split('.')[1], 10),
|
|
1701
|
-
satoshis: out.satoshis,
|
|
1702
|
-
outputScript: tx.outputs[Number(outputIndexStr)].lockingScript.toHex(),
|
|
1703
|
-
originator: normalizedDomain,
|
|
1704
|
-
rawOriginator: domainDecoded,
|
|
1705
|
-
privileged: privDecoded,
|
|
1706
|
-
certType: typeDecoded,
|
|
1707
|
-
certFields: allFields,
|
|
1708
|
-
verifier: verifierDec,
|
|
1709
|
-
expiry: expiryDecoded
|
|
1710
|
-
});
|
|
1711
|
-
}
|
|
1712
|
-
}
|
|
1713
|
-
return tokens;
|
|
1714
|
-
}
|
|
1715
|
-
/**
|
|
1716
|
-
* Returns `true` if the originator already holds a valid unexpired certificate access
|
|
1717
|
-
* for the given certType/fields. Does not prompt the user.
|
|
1718
|
-
*/
|
|
1719
|
-
async hasCertificateAccess(params) {
|
|
1720
|
-
try {
|
|
1721
|
-
await this.ensureCertificateAccess({
|
|
1722
|
-
originator: params.originator,
|
|
1723
|
-
privileged: params.privileged,
|
|
1724
|
-
verifier: params.verifier,
|
|
1725
|
-
certType: params.certType,
|
|
1726
|
-
fields: params.fields,
|
|
1727
|
-
seekPermission: false,
|
|
1728
|
-
usageType: 'disclosure'
|
|
1729
|
-
});
|
|
1730
|
-
return true;
|
|
1731
|
-
}
|
|
1732
|
-
catch (_a) {
|
|
1733
|
-
return false;
|
|
1734
|
-
}
|
|
1735
|
-
}
|
|
1736
|
-
/**
|
|
1737
|
-
* Revokes a permission token by spending it with no replacement output.
|
|
1738
|
-
* The manager builds a BRC-100 transaction that consumes the token, effectively invalidating it.
|
|
1739
|
-
*/
|
|
1740
|
-
async revokePermission(oldToken) {
|
|
1741
|
-
const oldOutpoint = `${oldToken.txid}.${oldToken.outputIndex}`;
|
|
1742
|
-
const { signableTransaction } = await this.createAction({
|
|
1743
|
-
description: `Revoke permission`,
|
|
1744
|
-
inputBEEF: oldToken.tx,
|
|
1745
|
-
inputs: [
|
|
1746
|
-
{
|
|
1747
|
-
outpoint: oldOutpoint,
|
|
1748
|
-
unlockingScriptLength: 73, // length of signature
|
|
1749
|
-
inputDescription: `Consume old permission token`
|
|
1750
|
-
}
|
|
1751
|
-
],
|
|
1752
|
-
options: {
|
|
1753
|
-
acceptDelayedBroadcast: false
|
|
1754
|
-
}
|
|
1755
|
-
}, this.adminOriginator);
|
|
1756
|
-
const tx = sdk_1.Transaction.fromBEEF(signableTransaction.tx);
|
|
1757
|
-
const unlocker = new sdk_1.PushDrop(this.underlying).unlock(WalletPermissionsManager.PERM_TOKEN_ENCRYPTION_PROTOCOL, '1', 'self', 'all', false, 1, sdk_1.LockingScript.fromHex(oldToken.outputScript));
|
|
1758
|
-
const unlockingScript = await unlocker.sign(tx, 0);
|
|
1759
|
-
await this.underlying.signAction({
|
|
1760
|
-
reference: signableTransaction.reference,
|
|
1761
|
-
spends: {
|
|
1762
|
-
0: {
|
|
1763
|
-
unlockingScript: unlockingScript.toHex()
|
|
1764
|
-
}
|
|
1765
|
-
}
|
|
1766
|
-
});
|
|
1767
|
-
}
|
|
1768
|
-
/* ---------------------------------------------------------------------
|
|
1769
|
-
* 7) BRC-100 WALLET INTERFACE FORWARDING WITH PERMISSION CHECKS
|
|
1770
|
-
* --------------------------------------------------------------------- */
|
|
1771
|
-
async createAction(args, originator) {
|
|
1772
|
-
var _a;
|
|
1773
|
-
// 1) Identify unique P-modules involved (one per schemeID)
|
|
1774
|
-
const pModulesByScheme = new Map();
|
|
1775
|
-
const nonPBaskets = [];
|
|
1776
|
-
if (args.outputs) {
|
|
1777
|
-
for (const out of args.outputs) {
|
|
1778
|
-
if (out.basket) {
|
|
1779
|
-
if (out.basket.startsWith('p ')) {
|
|
1780
|
-
const schemeID = out.basket.split(' ')[1];
|
|
1781
|
-
if (!pModulesByScheme.has(schemeID)) {
|
|
1782
|
-
const module = (_a = this.config.permissionModules) === null || _a === void 0 ? void 0 : _a[schemeID];
|
|
1783
|
-
if (!module) {
|
|
1784
|
-
throw new Error(`Unsupported P-basket scheme: p ${schemeID}`);
|
|
1785
|
-
}
|
|
1786
|
-
pModulesByScheme.set(schemeID, module);
|
|
1787
|
-
}
|
|
1788
|
-
}
|
|
1789
|
-
else {
|
|
1790
|
-
// Track non-P baskets for normal permission checks
|
|
1791
|
-
nonPBaskets.push(out.basket);
|
|
1792
|
-
}
|
|
1793
|
-
}
|
|
1794
|
-
}
|
|
1795
|
-
}
|
|
1796
|
-
// 2) Check permissions for non-P baskets
|
|
1797
|
-
for (const basket of nonPBaskets) {
|
|
1798
|
-
await this.ensureBasketAccess({
|
|
1799
|
-
originator: originator,
|
|
1800
|
-
basket,
|
|
1801
|
-
reason: args.description,
|
|
1802
|
-
usageType: 'insertion'
|
|
1803
|
-
});
|
|
1804
|
-
}
|
|
1805
|
-
if (args.labels) {
|
|
1806
|
-
for (const lbl of args.labels) {
|
|
1807
|
-
await this.ensureLabelAccess({
|
|
1808
|
-
originator: originator,
|
|
1809
|
-
label: lbl,
|
|
1810
|
-
reason: args.description,
|
|
1811
|
-
usageType: 'apply'
|
|
1812
|
-
});
|
|
1813
|
-
}
|
|
1814
|
-
}
|
|
1815
|
-
/**
|
|
1816
|
-
* 4) Force signAndProcess=false unless the originator is admin and explicitly sets it to true.
|
|
1817
|
-
* This ensures the underlying wallet returns a signableTransaction, letting us parse the transaction
|
|
1818
|
-
* to determine net spending and request authorization if needed.
|
|
1819
|
-
*/
|
|
1820
|
-
const modifiedOptions = { ...(args.options || {}) };
|
|
1821
|
-
if (modifiedOptions.signAndProcess !== true) {
|
|
1822
|
-
modifiedOptions.signAndProcess = false;
|
|
1823
|
-
}
|
|
1824
|
-
else if (!this.isAdminOriginator(originator)) {
|
|
1825
|
-
throw new Error('Only the admin originator can set signAndProcess=true explicitly.');
|
|
1826
|
-
}
|
|
1827
|
-
// 5) Encrypt transaction metadata, saving originals for use in permissions and line items.
|
|
1828
|
-
const originalDescription = args.description;
|
|
1829
|
-
const originalInputDescriptions = {};
|
|
1830
|
-
const originalOutputDescriptions = {};
|
|
1831
|
-
args.description = await this.maybeEncryptMetadata(args.description);
|
|
1832
|
-
for (let i = 0; i < (args.inputs || []).length; i++) {
|
|
1833
|
-
if (args.inputs[i].inputDescription) {
|
|
1834
|
-
originalInputDescriptions[i] = args.inputs[i].inputDescription;
|
|
1835
|
-
args.inputs[i].inputDescription = await this.maybeEncryptMetadata(args.inputs[i].inputDescription);
|
|
1836
|
-
}
|
|
1837
|
-
}
|
|
1838
|
-
for (let i = 0; i < (args.outputs || []).length; i++) {
|
|
1839
|
-
if (args.outputs[i].outputDescription) {
|
|
1840
|
-
originalOutputDescriptions[i] = args.outputs[i].outputDescription;
|
|
1841
|
-
args.outputs[i].outputDescription = await this.maybeEncryptMetadata(args.outputs[i].outputDescription);
|
|
1842
|
-
}
|
|
1843
|
-
if (args.outputs[i].customInstructions) {
|
|
1844
|
-
args.outputs[i].customInstructions = await this.maybeEncryptMetadata(args.outputs[i].customInstructions);
|
|
1845
|
-
}
|
|
1846
|
-
}
|
|
1847
|
-
/**
|
|
1848
|
-
* 6) Call the underlying wallet's createAction.
|
|
1849
|
-
* - If P-modules are involved, chain request transformations through them first
|
|
1850
|
-
* - Add two "admin" labels for tracking: "admin originator <domain>" and "admin month YYYY-MM"
|
|
1851
|
-
* - If P-modules are involved, chain response transformations back through them
|
|
1852
|
-
*/
|
|
1853
|
-
const finalArgs = {
|
|
1854
|
-
...args,
|
|
1855
|
-
options: modifiedOptions,
|
|
1856
|
-
labels: [...(args.labels || []), `admin originator ${originator}`, `admin month ${this.getCurrentMonthYearUTC()}`]
|
|
1857
|
-
};
|
|
1858
|
-
let createResult;
|
|
1859
|
-
if (pModulesByScheme.size > 0) {
|
|
1860
|
-
// P-modules are involved - chain transformations
|
|
1861
|
-
const pModules = Array.from(pModulesByScheme.values());
|
|
1862
|
-
// Chain onRequest calls through all modules
|
|
1863
|
-
let transformedArgs = finalArgs;
|
|
1864
|
-
for (const module of pModules) {
|
|
1865
|
-
const transformed = await module.onRequest({
|
|
1866
|
-
method: 'createAction',
|
|
1867
|
-
args: transformedArgs,
|
|
1868
|
-
originator: originator
|
|
1869
|
-
});
|
|
1870
|
-
transformedArgs = transformed.args;
|
|
1871
|
-
}
|
|
1872
|
-
// Call underlying wallet with transformed args
|
|
1873
|
-
createResult = await this.underlying.createAction(transformedArgs, originator);
|
|
1874
|
-
// Chain onResponse calls in reverse order
|
|
1875
|
-
for (let i = pModules.length - 1; i >= 0; i--) {
|
|
1876
|
-
createResult = await pModules[i].onResponse(createResult, {
|
|
1877
|
-
method: 'createAction',
|
|
1878
|
-
originator: originator
|
|
1879
|
-
});
|
|
1880
|
-
}
|
|
1881
|
-
}
|
|
1882
|
-
else {
|
|
1883
|
-
// No P-modules - call underlying wallet directly
|
|
1884
|
-
createResult = await this.underlying.createAction(finalArgs, originator);
|
|
1885
|
-
}
|
|
1886
|
-
// If there's no signableTransaction, the underlying wallet must have fully finalized it. Return as is.
|
|
1887
|
-
if (!createResult.signableTransaction) {
|
|
1888
|
-
return createResult;
|
|
1889
|
-
}
|
|
1890
|
-
/**
|
|
1891
|
-
* 7) We have a signable transaction. Parse it to determine how much the originator is actually spending.
|
|
1892
|
-
* We only consider inputs the originator explicitly listed in args.inputs.
|
|
1893
|
-
* netSpent = (sum of originator-requested outputs) - (sum of matching originator inputs).
|
|
1894
|
-
* If netSpent > 0, we need spending authorization.
|
|
1895
|
-
*/
|
|
1896
|
-
const tx = sdk_1.Transaction.fromAtomicBEEF(createResult.signableTransaction.tx);
|
|
1897
|
-
const reference = createResult.signableTransaction.reference;
|
|
1898
|
-
let netSpent = 0;
|
|
1899
|
-
const lineItems = [];
|
|
1900
|
-
// Sum originator-provided inputs:
|
|
1901
|
-
let totalInputSatoshis = 0;
|
|
1902
|
-
for (const input of tx.inputs) {
|
|
1903
|
-
const outpoint = `${input.sourceTXID}.${input.sourceOutputIndex}`;
|
|
1904
|
-
const matchingIndex = (args.inputs || []).findIndex(i => i.outpoint === outpoint);
|
|
1905
|
-
if (matchingIndex !== -1) {
|
|
1906
|
-
const satoshis = input.sourceTransaction.outputs[input.sourceOutputIndex].satoshis;
|
|
1907
|
-
totalInputSatoshis += satoshis;
|
|
1908
|
-
lineItems.push({
|
|
1909
|
-
type: 'input',
|
|
1910
|
-
description: originalInputDescriptions[matchingIndex] || 'No input description provided',
|
|
1911
|
-
satoshis: satoshis
|
|
1912
|
-
});
|
|
1913
|
-
}
|
|
1914
|
-
}
|
|
1915
|
-
// Sum originator-requested outputs:
|
|
1916
|
-
const totalOutputSatoshis = (args.outputs || []).reduce((acc, out) => acc + out.satoshis, 0);
|
|
1917
|
-
for (const outIndex in args.outputs || []) {
|
|
1918
|
-
const out = args.outputs[outIndex];
|
|
1919
|
-
lineItems.push({
|
|
1920
|
-
type: 'output',
|
|
1921
|
-
satoshis: out.satoshis,
|
|
1922
|
-
description: originalOutputDescriptions[outIndex] || 'No output description provided'
|
|
1923
|
-
});
|
|
1924
|
-
}
|
|
1925
|
-
// Add an entry for the transaction fee:
|
|
1926
|
-
lineItems.push({
|
|
1927
|
-
type: 'fee',
|
|
1928
|
-
satoshis: tx.getFee(),
|
|
1929
|
-
description: 'Network fee'
|
|
1930
|
-
});
|
|
1931
|
-
/**
|
|
1932
|
-
* When it comes to spending authorizations, and the computation of net spend, there are
|
|
1933
|
-
* two types of inputs and two types of outputs:
|
|
1934
|
-
*
|
|
1935
|
-
* There are foreign (originator-requested) ones, and domestic (internally-provided) ones.
|
|
1936
|
-
* The net spend is always calculated from the domestic, internal perspective. Therefore, the
|
|
1937
|
-
* cost of funding the foreign outputs is the base cost to the domestic user, unless this is
|
|
1938
|
-
* somehow offset.
|
|
1939
|
-
*
|
|
1940
|
-
* The only way to offset this cost is when the foreign inputs help carry some of the burden.
|
|
1941
|
-
* This is why we can subtract the sum of the foreign inputs from the sum of foreign outputs,
|
|
1942
|
-
* to gague how much of that cost needs to be born domestically by the user.
|
|
1943
|
-
*
|
|
1944
|
-
* The logic does not need to account for whatever domestic inputs are provided, or whatever
|
|
1945
|
-
* domestic outputs are re-captured by the wallet back as change. The wallet could conceivably
|
|
1946
|
-
* provide 21e8 satoshis as input and re-capture the same amount as change, but the net effect
|
|
1947
|
-
* on actual spending would be zero. Therefore, we base net spend on total foreign outflows
|
|
1948
|
-
* minus total foreign inflows. Fees are also considered.
|
|
1949
|
-
*/
|
|
1950
|
-
netSpent = totalOutputSatoshis + tx.getFee() - totalInputSatoshis;
|
|
1951
|
-
// 8) If netSpent > 0, require spending authorization. Abort if denied.
|
|
1952
|
-
if (netSpent > 0) {
|
|
1953
|
-
try {
|
|
1954
|
-
await this.ensureSpendingAuthorization({
|
|
1955
|
-
originator: originator,
|
|
1956
|
-
satoshis: netSpent,
|
|
1957
|
-
lineItems,
|
|
1958
|
-
reason: originalDescription
|
|
1959
|
-
});
|
|
1960
|
-
}
|
|
1961
|
-
catch (err) {
|
|
1962
|
-
await this.underlying.abortAction({ reference });
|
|
1963
|
-
throw err;
|
|
1964
|
-
}
|
|
1965
|
-
}
|
|
1966
|
-
/**
|
|
1967
|
-
* 9) Decide whether to finalize the transaction automatically or return the signableTransaction:
|
|
1968
|
-
* - If the user originally wanted signAndProcess (the default when undefined), we forcibly set it to false earlier, so check if we should now finalize it.
|
|
1969
|
-
* - If the transaction still needs more signatures, we must return the signableTransaction.
|
|
1970
|
-
*/
|
|
1971
|
-
const vargs = sdk_1.Validation.validateCreateActionArgs(args);
|
|
1972
|
-
if (vargs.isSignAction) {
|
|
1973
|
-
return createResult;
|
|
1974
|
-
}
|
|
1975
|
-
const signResult = await this.underlying.signAction({ reference, spends: {}, options: args.options }, originator);
|
|
1976
|
-
// Merge signResult into createResult and remove signableTransaction:
|
|
1977
|
-
return {
|
|
1978
|
-
...createResult,
|
|
1979
|
-
...signResult,
|
|
1980
|
-
signableTransaction: undefined
|
|
1981
|
-
};
|
|
1982
|
-
}
|
|
1983
|
-
async signAction(...args) {
|
|
1984
|
-
return this.underlying.signAction(...args);
|
|
1985
|
-
}
|
|
1986
|
-
async abortAction(...args) {
|
|
1987
|
-
return this.underlying.abortAction(...args);
|
|
1988
|
-
}
|
|
1989
|
-
async listActions(...args) {
|
|
1990
|
-
const [requestArgs, originator] = args;
|
|
1991
|
-
// for each label, ensure label access
|
|
1992
|
-
if (requestArgs.labels) {
|
|
1993
|
-
for (const lbl of requestArgs.labels) {
|
|
1994
|
-
await this.ensureLabelAccess({
|
|
1995
|
-
originator: originator,
|
|
1996
|
-
label: lbl,
|
|
1997
|
-
reason: 'listActions',
|
|
1998
|
-
usageType: 'list'
|
|
1999
|
-
});
|
|
2000
|
-
}
|
|
2001
|
-
}
|
|
2002
|
-
const results = await this.underlying.listActions(...args);
|
|
2003
|
-
// Transparently decrypt transaction metadata, if configured to do so.
|
|
2004
|
-
if (results.actions) {
|
|
2005
|
-
for (let i = 0; i < results.actions.length; i++) {
|
|
2006
|
-
if (results.actions[i].description) {
|
|
2007
|
-
results.actions[i].description = await this.maybeDecryptMetadata(results.actions[i].description);
|
|
2008
|
-
}
|
|
2009
|
-
if (results.actions[i].inputs) {
|
|
2010
|
-
for (let j = 0; j < results.actions[i].inputs.length; j++) {
|
|
2011
|
-
if (results.actions[i].inputs[j].inputDescription) {
|
|
2012
|
-
results.actions[i].inputs[j].inputDescription = await this.maybeDecryptMetadata(results.actions[i].inputs[j].inputDescription);
|
|
2013
|
-
}
|
|
2014
|
-
}
|
|
2015
|
-
}
|
|
2016
|
-
if (results.actions[i].outputs) {
|
|
2017
|
-
for (let j = 0; j < results.actions[i].outputs.length; j++) {
|
|
2018
|
-
if (results.actions[i].outputs[j].outputDescription) {
|
|
2019
|
-
results.actions[i].outputs[j].outputDescription = await this.maybeDecryptMetadata(results.actions[i].outputs[j].outputDescription);
|
|
2020
|
-
}
|
|
2021
|
-
if (results.actions[i].outputs[j].customInstructions) {
|
|
2022
|
-
results.actions[i].outputs[j].customInstructions = await this.maybeDecryptMetadata(results.actions[i].outputs[j].customInstructions);
|
|
2023
|
-
}
|
|
2024
|
-
}
|
|
2025
|
-
}
|
|
2026
|
-
}
|
|
2027
|
-
}
|
|
2028
|
-
return results;
|
|
2029
|
-
}
|
|
2030
|
-
async internalizeAction(...args) {
|
|
2031
|
-
const [requestArgs, originator] = args;
|
|
2032
|
-
// If the transaction is inserting outputs into baskets, we also ensure basket permission
|
|
2033
|
-
for (const outIndex in requestArgs.outputs) {
|
|
2034
|
-
const out = requestArgs.outputs[outIndex];
|
|
2035
|
-
if (out.protocol === 'basket insertion') {
|
|
2036
|
-
// Delegate to permission module if needed
|
|
2037
|
-
const pModuleResult = await this.delegateToPModuleIfNeeded(out.insertionRemittance.basket, 'internalizeAction', requestArgs, originator, async (transformedArgs) => {
|
|
2038
|
-
if (out.insertionRemittance.customInstructions) {
|
|
2039
|
-
;
|
|
2040
|
-
transformedArgs.outputs[outIndex].insertionRemittance.customInstructions =
|
|
2041
|
-
await this.maybeEncryptMetadata(out.insertionRemittance.customInstructions);
|
|
2042
|
-
}
|
|
2043
|
-
return await this.underlying.internalizeAction(transformedArgs, originator);
|
|
2044
|
-
});
|
|
2045
|
-
if (pModuleResult !== null) {
|
|
2046
|
-
return pModuleResult;
|
|
2047
|
-
}
|
|
2048
|
-
await this.ensureBasketAccess({
|
|
2049
|
-
originator: originator,
|
|
2050
|
-
basket: out.insertionRemittance.basket,
|
|
2051
|
-
reason: requestArgs.description,
|
|
2052
|
-
usageType: 'insertion'
|
|
2053
|
-
});
|
|
2054
|
-
if (out.insertionRemittance.customInstructions) {
|
|
2055
|
-
requestArgs.outputs[outIndex].insertionRemittance.customInstructions = await this.maybeEncryptMetadata(out.insertionRemittance.customInstructions);
|
|
2056
|
-
}
|
|
2057
|
-
}
|
|
2058
|
-
}
|
|
2059
|
-
return this.underlying.internalizeAction(...args);
|
|
2060
|
-
}
|
|
2061
|
-
async listOutputs(...args) {
|
|
2062
|
-
const [requestArgs, originator] = args;
|
|
2063
|
-
// Delegate to permission module if needed
|
|
2064
|
-
const pModuleResult = await this.delegateToPModuleIfNeeded(requestArgs.basket, 'listOutputs', requestArgs, originator, async (transformedArgs) => {
|
|
2065
|
-
const result = await this.underlying.listOutputs(transformedArgs, originator);
|
|
2066
|
-
// Apply metadata decryption to permission module response
|
|
2067
|
-
return await this.decryptListOutputsMetadata(result);
|
|
2068
|
-
});
|
|
2069
|
-
if (pModuleResult !== null) {
|
|
2070
|
-
return pModuleResult;
|
|
2071
|
-
}
|
|
2072
|
-
// Ensure the originator has permission for the basket.
|
|
2073
|
-
await this.ensureBasketAccess({
|
|
2074
|
-
originator: originator,
|
|
2075
|
-
basket: requestArgs.basket,
|
|
2076
|
-
reason: 'listOutputs',
|
|
2077
|
-
usageType: 'listing'
|
|
2078
|
-
});
|
|
2079
|
-
const results = await this.underlying.listOutputs(...args);
|
|
2080
|
-
// Apply metadata decryption to regular response
|
|
2081
|
-
return await this.decryptListOutputsMetadata(results);
|
|
2082
|
-
}
|
|
2083
|
-
async relinquishOutput(...args) {
|
|
2084
|
-
const [requestArgs, originator] = args;
|
|
2085
|
-
// Delegate to permission module if needed
|
|
2086
|
-
const pModuleResult = await this.delegateToPModuleIfNeeded(requestArgs.basket, 'relinquishOutput', requestArgs, originator, async (transformedArgs) => {
|
|
2087
|
-
return await this.underlying.relinquishOutput(transformedArgs, originator);
|
|
2088
|
-
});
|
|
2089
|
-
if (pModuleResult !== null) {
|
|
2090
|
-
return pModuleResult;
|
|
2091
|
-
}
|
|
2092
|
-
await this.ensureBasketAccess({
|
|
2093
|
-
originator: originator,
|
|
2094
|
-
basket: requestArgs.basket,
|
|
2095
|
-
reason: 'relinquishOutput',
|
|
2096
|
-
usageType: 'removal'
|
|
2097
|
-
});
|
|
2098
|
-
return this.underlying.relinquishOutput(...args);
|
|
2099
|
-
}
|
|
2100
|
-
async getPublicKey(...args) {
|
|
2101
|
-
const [requestArgs, originator] = args;
|
|
2102
|
-
if (requestArgs.protocolID) {
|
|
2103
|
-
// Delegate to permission module if needed
|
|
2104
|
-
const pModuleResult = await this.delegateToPModuleIfNeeded(requestArgs.protocolID[1], 'getPublicKey', requestArgs, originator, async (transformedArgs) => {
|
|
2105
|
-
return await this.underlying.getPublicKey(transformedArgs, originator);
|
|
2106
|
-
});
|
|
2107
|
-
if (pModuleResult !== null) {
|
|
2108
|
-
return pModuleResult;
|
|
2109
|
-
}
|
|
2110
|
-
// Not a P-protocol, continue with normal permission flow
|
|
2111
|
-
await this.ensureProtocolPermission({
|
|
2112
|
-
originator: originator,
|
|
2113
|
-
privileged: requestArgs.privileged,
|
|
2114
|
-
protocolID: requestArgs.protocolID,
|
|
2115
|
-
counterparty: requestArgs.counterparty || 'self',
|
|
2116
|
-
reason: requestArgs.privilegedReason,
|
|
2117
|
-
usageType: 'publicKey'
|
|
2118
|
-
});
|
|
2119
|
-
}
|
|
2120
|
-
if (requestArgs.identityKey) {
|
|
2121
|
-
// We also require a minimal protocol permission to retrieve the user's identity key
|
|
2122
|
-
await this.ensureProtocolPermission({
|
|
2123
|
-
originator: originator,
|
|
2124
|
-
privileged: requestArgs.privileged,
|
|
2125
|
-
protocolID: [1, 'identity key retrieval'],
|
|
2126
|
-
counterparty: 'self',
|
|
2127
|
-
reason: requestArgs.privilegedReason,
|
|
2128
|
-
usageType: 'identityKey'
|
|
2129
|
-
});
|
|
2130
|
-
}
|
|
2131
|
-
return this.underlying.getPublicKey(...args);
|
|
2132
|
-
}
|
|
2133
|
-
async revealCounterpartyKeyLinkage(...args) {
|
|
2134
|
-
const [requestArgs, originator] = args;
|
|
2135
|
-
await this.ensureProtocolPermission({
|
|
2136
|
-
originator: originator,
|
|
2137
|
-
privileged: requestArgs.privileged,
|
|
2138
|
-
protocolID: [2, `counterparty key linkage revelation ${requestArgs.counterparty}`],
|
|
2139
|
-
counterparty: requestArgs.verifier,
|
|
2140
|
-
reason: requestArgs.privilegedReason,
|
|
2141
|
-
usageType: 'linkageRevelation'
|
|
2142
|
-
});
|
|
2143
|
-
return this.underlying.revealCounterpartyKeyLinkage(...args);
|
|
2144
|
-
}
|
|
2145
|
-
async revealSpecificKeyLinkage(...args) {
|
|
2146
|
-
const [requestArgs, originator] = args;
|
|
2147
|
-
await this.ensureProtocolPermission({
|
|
2148
|
-
originator: originator,
|
|
2149
|
-
privileged: requestArgs.privileged,
|
|
2150
|
-
protocolID: [
|
|
2151
|
-
2,
|
|
2152
|
-
`specific key linkage revelation ${requestArgs.protocolID[1]} ${requestArgs.protocolID[0] === 2 ? requestArgs.keyID : 'all'}`
|
|
2153
|
-
],
|
|
2154
|
-
counterparty: requestArgs.verifier,
|
|
2155
|
-
reason: requestArgs.privilegedReason,
|
|
2156
|
-
usageType: 'linkageRevelation'
|
|
2157
|
-
});
|
|
2158
|
-
return this.underlying.revealSpecificKeyLinkage(...args);
|
|
2159
|
-
}
|
|
2160
|
-
async encrypt(...args) {
|
|
2161
|
-
const [requestArgs, originator] = args;
|
|
2162
|
-
// Delegate to permission module if needed
|
|
2163
|
-
const pModuleResult = await this.delegateToPModuleIfNeeded(requestArgs.protocolID[1], 'encrypt', requestArgs, originator, async (transformedArgs) => {
|
|
2164
|
-
return await this.underlying.encrypt(transformedArgs, originator);
|
|
2165
|
-
});
|
|
2166
|
-
if (pModuleResult !== null) {
|
|
2167
|
-
return pModuleResult;
|
|
2168
|
-
}
|
|
2169
|
-
await this.ensureProtocolPermission({
|
|
2170
|
-
originator: originator,
|
|
2171
|
-
protocolID: requestArgs.protocolID,
|
|
2172
|
-
privileged: requestArgs.privileged,
|
|
2173
|
-
counterparty: requestArgs.counterparty || 'self',
|
|
2174
|
-
reason: requestArgs.privilegedReason,
|
|
2175
|
-
usageType: 'encrypting'
|
|
2176
|
-
});
|
|
2177
|
-
return this.underlying.encrypt(...args);
|
|
2178
|
-
}
|
|
2179
|
-
async decrypt(...args) {
|
|
2180
|
-
const [requestArgs, originator] = args;
|
|
2181
|
-
// Delegate to permission module if needed
|
|
2182
|
-
const pModuleResult = await this.delegateToPModuleIfNeeded(requestArgs.protocolID[1], 'decrypt', requestArgs, originator, async (transformedArgs) => {
|
|
2183
|
-
return await this.underlying.decrypt(transformedArgs, originator);
|
|
2184
|
-
});
|
|
2185
|
-
if (pModuleResult !== null) {
|
|
2186
|
-
return pModuleResult;
|
|
2187
|
-
}
|
|
2188
|
-
await this.ensureProtocolPermission({
|
|
2189
|
-
originator: originator,
|
|
2190
|
-
privileged: requestArgs.privileged,
|
|
2191
|
-
protocolID: requestArgs.protocolID,
|
|
2192
|
-
counterparty: requestArgs.counterparty || 'self',
|
|
2193
|
-
reason: requestArgs.privilegedReason,
|
|
2194
|
-
usageType: 'encrypting'
|
|
2195
|
-
});
|
|
2196
|
-
return this.underlying.decrypt(...args);
|
|
2197
|
-
}
|
|
2198
|
-
async createHmac(...args) {
|
|
2199
|
-
const [requestArgs, originator] = args;
|
|
2200
|
-
// Delegate to permission module if needed
|
|
2201
|
-
const pModuleResult = await this.delegateToPModuleIfNeeded(requestArgs.protocolID[1], 'createHmac', requestArgs, originator, async (transformedArgs) => {
|
|
2202
|
-
return await this.underlying.createHmac(transformedArgs, originator);
|
|
2203
|
-
});
|
|
2204
|
-
if (pModuleResult !== null) {
|
|
2205
|
-
return pModuleResult;
|
|
2206
|
-
}
|
|
2207
|
-
await this.ensureProtocolPermission({
|
|
2208
|
-
originator: originator,
|
|
2209
|
-
privileged: requestArgs.privileged,
|
|
2210
|
-
protocolID: requestArgs.protocolID,
|
|
2211
|
-
counterparty: requestArgs.counterparty || 'self',
|
|
2212
|
-
reason: requestArgs.privilegedReason,
|
|
2213
|
-
usageType: 'hmac'
|
|
2214
|
-
});
|
|
2215
|
-
return this.underlying.createHmac(...args);
|
|
2216
|
-
}
|
|
2217
|
-
async verifyHmac(...args) {
|
|
2218
|
-
const [requestArgs, originator] = args;
|
|
2219
|
-
// Delegate to permission module if needed
|
|
2220
|
-
const pModuleResult = await this.delegateToPModuleIfNeeded(requestArgs.protocolID[1], 'verifyHmac', requestArgs, originator, async (transformedArgs) => {
|
|
2221
|
-
return await this.underlying.verifyHmac(transformedArgs, originator);
|
|
2222
|
-
});
|
|
2223
|
-
if (pModuleResult !== null) {
|
|
2224
|
-
return pModuleResult;
|
|
2225
|
-
}
|
|
2226
|
-
await this.ensureProtocolPermission({
|
|
2227
|
-
originator: originator,
|
|
2228
|
-
privileged: requestArgs.privileged,
|
|
2229
|
-
protocolID: requestArgs.protocolID,
|
|
2230
|
-
counterparty: requestArgs.counterparty || 'self',
|
|
2231
|
-
reason: requestArgs.privilegedReason,
|
|
2232
|
-
usageType: 'hmac'
|
|
2233
|
-
});
|
|
2234
|
-
return this.underlying.verifyHmac(...args);
|
|
2235
|
-
}
|
|
2236
|
-
async createSignature(...args) {
|
|
2237
|
-
const [requestArgs, originator] = args;
|
|
2238
|
-
// Delegate to permission module if needed
|
|
2239
|
-
const pModuleResult = await this.delegateToPModuleIfNeeded(requestArgs.protocolID[1], 'createSignature', requestArgs, originator, async (transformedArgs) => {
|
|
2240
|
-
return await this.underlying.createSignature(transformedArgs, originator);
|
|
2241
|
-
});
|
|
2242
|
-
if (pModuleResult !== null) {
|
|
2243
|
-
return pModuleResult;
|
|
2244
|
-
}
|
|
2245
|
-
await this.ensureProtocolPermission({
|
|
2246
|
-
originator: originator,
|
|
2247
|
-
privileged: requestArgs.privileged,
|
|
2248
|
-
protocolID: requestArgs.protocolID,
|
|
2249
|
-
counterparty: requestArgs.counterparty || 'self',
|
|
2250
|
-
reason: requestArgs.privilegedReason,
|
|
2251
|
-
usageType: 'signing'
|
|
2252
|
-
});
|
|
2253
|
-
return this.underlying.createSignature(...args);
|
|
2254
|
-
}
|
|
2255
|
-
async verifySignature(...args) {
|
|
2256
|
-
const [requestArgs, originator] = args;
|
|
2257
|
-
// Delegate to permission module if needed
|
|
2258
|
-
const pModuleResult = await this.delegateToPModuleIfNeeded(requestArgs.protocolID[1], 'verifySignature', requestArgs, originator, async (transformedArgs) => {
|
|
2259
|
-
return await this.underlying.verifySignature(transformedArgs, originator);
|
|
2260
|
-
});
|
|
2261
|
-
if (pModuleResult !== null) {
|
|
2262
|
-
return pModuleResult;
|
|
2263
|
-
}
|
|
2264
|
-
await this.ensureProtocolPermission({
|
|
2265
|
-
originator: originator,
|
|
2266
|
-
privileged: requestArgs.privileged,
|
|
2267
|
-
protocolID: requestArgs.protocolID,
|
|
2268
|
-
counterparty: requestArgs.counterparty || 'self',
|
|
2269
|
-
reason: requestArgs.privilegedReason,
|
|
2270
|
-
usageType: 'signing'
|
|
2271
|
-
});
|
|
2272
|
-
return this.underlying.verifySignature(...args);
|
|
2273
|
-
}
|
|
2274
|
-
async acquireCertificate(...args) {
|
|
2275
|
-
const [requestArgs, originator] = args;
|
|
2276
|
-
if (this.config.seekCertificateAcquisitionPermissions) {
|
|
2277
|
-
await this.ensureProtocolPermission({
|
|
2278
|
-
originator: originator,
|
|
2279
|
-
privileged: requestArgs.privileged,
|
|
2280
|
-
protocolID: [1, `certificate acquisition ${requestArgs.type}`],
|
|
2281
|
-
counterparty: 'self',
|
|
2282
|
-
reason: requestArgs.privilegedReason,
|
|
2283
|
-
usageType: 'generic'
|
|
2284
|
-
});
|
|
2285
|
-
}
|
|
2286
|
-
return this.underlying.acquireCertificate(...args);
|
|
2287
|
-
}
|
|
2288
|
-
async listCertificates(...args) {
|
|
2289
|
-
const [requestArgs, originator] = args;
|
|
2290
|
-
if (this.config.seekCertificateListingPermissions) {
|
|
2291
|
-
await this.ensureProtocolPermission({
|
|
2292
|
-
originator: originator,
|
|
2293
|
-
privileged: requestArgs.privileged,
|
|
2294
|
-
protocolID: [1, `certificate list`],
|
|
2295
|
-
counterparty: 'self',
|
|
2296
|
-
reason: requestArgs.privilegedReason,
|
|
2297
|
-
usageType: 'generic'
|
|
2298
|
-
});
|
|
2299
|
-
}
|
|
2300
|
-
return this.underlying.listCertificates(...args);
|
|
2301
|
-
}
|
|
2302
|
-
async proveCertificate(...args) {
|
|
2303
|
-
const [requestArgs, originator] = args;
|
|
2304
|
-
await this.ensureCertificateAccess({
|
|
2305
|
-
originator: originator,
|
|
2306
|
-
privileged: requestArgs.privileged,
|
|
2307
|
-
verifier: requestArgs.verifier,
|
|
2308
|
-
certType: requestArgs.certificate.type,
|
|
2309
|
-
fields: requestArgs.fieldsToReveal,
|
|
2310
|
-
reason: 'proveCertificate',
|
|
2311
|
-
usageType: 'disclosure'
|
|
2312
|
-
});
|
|
2313
|
-
return this.underlying.proveCertificate(...args);
|
|
2314
|
-
}
|
|
2315
|
-
async relinquishCertificate(...args) {
|
|
2316
|
-
const [requestArgs, originator] = args;
|
|
2317
|
-
if (this.config.seekCertificateRelinquishmentPermissions) {
|
|
2318
|
-
await this.ensureProtocolPermission({
|
|
2319
|
-
originator: originator,
|
|
2320
|
-
privileged: requestArgs.privileged ? true : false,
|
|
2321
|
-
protocolID: [1, `certificate relinquishment ${requestArgs.type}`],
|
|
2322
|
-
counterparty: 'self',
|
|
2323
|
-
reason: requestArgs.privilegedReason || 'relinquishCertificate',
|
|
2324
|
-
usageType: 'generic'
|
|
2325
|
-
});
|
|
2326
|
-
}
|
|
2327
|
-
return this.underlying.relinquishCertificate(...args);
|
|
2328
|
-
}
|
|
2329
|
-
async discoverByIdentityKey(...args) {
|
|
2330
|
-
const [_, originator] = args;
|
|
2331
|
-
if (this.config.seekPermissionsForIdentityResolution) {
|
|
2332
|
-
await this.ensureProtocolPermission({
|
|
2333
|
-
originator: originator,
|
|
2334
|
-
privileged: false,
|
|
2335
|
-
protocolID: [1, `identity resolution`],
|
|
2336
|
-
counterparty: 'self',
|
|
2337
|
-
reason: 'discoverByIdentityKey',
|
|
2338
|
-
usageType: 'generic'
|
|
2339
|
-
});
|
|
2340
|
-
}
|
|
2341
|
-
return this.underlying.discoverByIdentityKey(...args);
|
|
2342
|
-
}
|
|
2343
|
-
async discoverByAttributes(...args) {
|
|
2344
|
-
const [_, originator] = args;
|
|
2345
|
-
if (this.config.seekPermissionsForIdentityResolution) {
|
|
2346
|
-
await this.ensureProtocolPermission({
|
|
2347
|
-
originator: originator,
|
|
2348
|
-
privileged: false,
|
|
2349
|
-
protocolID: [1, `identity resolution`],
|
|
2350
|
-
counterparty: 'self',
|
|
2351
|
-
reason: 'discoverByAttributes',
|
|
2352
|
-
usageType: 'generic'
|
|
2353
|
-
});
|
|
2354
|
-
}
|
|
2355
|
-
return this.underlying.discoverByAttributes(...args);
|
|
2356
|
-
}
|
|
2357
|
-
async isAuthenticated(...args) {
|
|
2358
|
-
return this.underlying.isAuthenticated(...args);
|
|
2359
|
-
}
|
|
2360
|
-
async waitForAuthentication(...args) {
|
|
2361
|
-
var _a, _b, _c, _d, _e, _f, _g;
|
|
2362
|
-
let [_, originator] = args;
|
|
2363
|
-
if (this.config.seekGroupedPermission && originator) {
|
|
2364
|
-
const { normalized: normalizedOriginator } = this.prepareOriginator(originator);
|
|
2365
|
-
originator = normalizedOriginator;
|
|
2366
|
-
// 1. Fetch manifest.json from the originator
|
|
2367
|
-
let groupPermissions;
|
|
2368
|
-
try {
|
|
2369
|
-
const proto = originator.startsWith('localhost:') ? 'http' : 'https';
|
|
2370
|
-
const response = await fetch(`${proto}://${originator}/manifest.json`);
|
|
2371
|
-
if (response.ok) {
|
|
2372
|
-
const manifest = await response.json();
|
|
2373
|
-
if ((_a = manifest === null || manifest === void 0 ? void 0 : manifest.babbage) === null || _a === void 0 ? void 0 : _a.groupPermissions) {
|
|
2374
|
-
groupPermissions = manifest.babbage.groupPermissions;
|
|
2375
|
-
}
|
|
2376
|
-
}
|
|
2377
|
-
}
|
|
2378
|
-
catch (e) {
|
|
2379
|
-
// Ignore fetch/parse errors, just proceed without group permissions.
|
|
2380
|
-
}
|
|
2381
|
-
if (groupPermissions) {
|
|
2382
|
-
// 2. Filter out already-granted permissions
|
|
2383
|
-
const permissionsToRequest = {
|
|
2384
|
-
protocolPermissions: [],
|
|
2385
|
-
basketAccess: [],
|
|
2386
|
-
certificateAccess: []
|
|
2387
|
-
};
|
|
2388
|
-
if (groupPermissions.spendingAuthorization) {
|
|
2389
|
-
const hasAuth = await this.hasSpendingAuthorization({
|
|
2390
|
-
originator,
|
|
2391
|
-
satoshis: groupPermissions.spendingAuthorization.amount
|
|
2392
|
-
});
|
|
2393
|
-
if (!hasAuth) {
|
|
2394
|
-
permissionsToRequest.spendingAuthorization = groupPermissions.spendingAuthorization;
|
|
2395
|
-
}
|
|
2396
|
-
}
|
|
2397
|
-
for (const p of groupPermissions.protocolPermissions || []) {
|
|
2398
|
-
const hasPerm = await this.hasProtocolPermission({
|
|
2399
|
-
originator,
|
|
2400
|
-
privileged: false, // Privilege is never allowed here
|
|
2401
|
-
protocolID: p.protocolID,
|
|
2402
|
-
counterparty: p.counterparty || 'self'
|
|
2403
|
-
});
|
|
2404
|
-
if (!hasPerm) {
|
|
2405
|
-
permissionsToRequest.protocolPermissions.push(p);
|
|
2406
|
-
}
|
|
2407
|
-
}
|
|
2408
|
-
for (const b of groupPermissions.basketAccess || []) {
|
|
2409
|
-
const hasAccess = await this.hasBasketAccess({
|
|
2410
|
-
originator,
|
|
2411
|
-
basket: b.basket
|
|
2412
|
-
});
|
|
2413
|
-
if (!hasAccess) {
|
|
2414
|
-
permissionsToRequest.basketAccess.push(b);
|
|
2415
|
-
}
|
|
2416
|
-
}
|
|
2417
|
-
for (const c of groupPermissions.certificateAccess || []) {
|
|
2418
|
-
const hasAccess = await this.hasCertificateAccess({
|
|
2419
|
-
originator,
|
|
2420
|
-
privileged: false, // Privilege is never allowed here for security
|
|
2421
|
-
verifier: c.verifierPublicKey,
|
|
2422
|
-
certType: c.type,
|
|
2423
|
-
fields: c.fields
|
|
2424
|
-
});
|
|
2425
|
-
if (!hasAccess) {
|
|
2426
|
-
permissionsToRequest.certificateAccess.push(c);
|
|
2427
|
-
}
|
|
2428
|
-
}
|
|
2429
|
-
// 3. If any permissions are left to request, start the flow
|
|
2430
|
-
const hasRequests = permissionsToRequest.spendingAuthorization ||
|
|
2431
|
-
((_c = (_b = permissionsToRequest.protocolPermissions) === null || _b === void 0 ? void 0 : _b.length) !== null && _c !== void 0 ? _c : 0) > 0 ||
|
|
2432
|
-
((_e = (_d = permissionsToRequest.basketAccess) === null || _d === void 0 ? void 0 : _d.length) !== null && _e !== void 0 ? _e : 0) > 0 ||
|
|
2433
|
-
((_g = (_f = permissionsToRequest.certificateAccess) === null || _f === void 0 ? void 0 : _f.length) !== null && _g !== void 0 ? _g : 0) > 0;
|
|
2434
|
-
if (hasRequests) {
|
|
2435
|
-
const key = `group:${originator}`;
|
|
2436
|
-
if (this.activeRequests.has(key)) {
|
|
2437
|
-
// Another call is already waiting, piggyback on it
|
|
2438
|
-
await new Promise((resolve, reject) => {
|
|
2439
|
-
this.activeRequests.get(key).pending.push({ resolve, reject });
|
|
2440
|
-
});
|
|
2441
|
-
}
|
|
2442
|
-
else {
|
|
2443
|
-
// This is the first call, create a new request
|
|
2444
|
-
try {
|
|
2445
|
-
await new Promise(async (resolve, reject) => {
|
|
2446
|
-
this.activeRequests.set(key, {
|
|
2447
|
-
request: { originator: originator, permissions: permissionsToRequest },
|
|
2448
|
-
pending: [{ resolve, reject }]
|
|
2449
|
-
});
|
|
2450
|
-
await this.callEvent('onGroupedPermissionRequested', {
|
|
2451
|
-
requestID: key,
|
|
2452
|
-
originator,
|
|
2453
|
-
permissions: permissionsToRequest
|
|
2454
|
-
});
|
|
2455
|
-
});
|
|
2456
|
-
}
|
|
2457
|
-
catch (e) {
|
|
2458
|
-
// Permission was denied, re-throw to stop execution
|
|
2459
|
-
throw e;
|
|
2460
|
-
}
|
|
2461
|
-
}
|
|
2462
|
-
}
|
|
2463
|
-
}
|
|
2464
|
-
}
|
|
2465
|
-
// Finally, after handling grouped permissions, call the underlying method.
|
|
2466
|
-
return this.underlying.waitForAuthentication(...args);
|
|
2467
|
-
}
|
|
2468
|
-
async getHeight(...args) {
|
|
2469
|
-
return this.underlying.getHeight(...args);
|
|
2470
|
-
}
|
|
2471
|
-
async getHeaderForHeight(...args) {
|
|
2472
|
-
return this.underlying.getHeaderForHeight(...args);
|
|
2473
|
-
}
|
|
2474
|
-
async getNetwork(...args) {
|
|
2475
|
-
return this.underlying.getNetwork(...args);
|
|
2476
|
-
}
|
|
2477
|
-
async getVersion(...args) {
|
|
2478
|
-
return this.underlying.getVersion(...args);
|
|
2479
|
-
}
|
|
2480
|
-
/* ---------------------------------------------------------------------
|
|
2481
|
-
* 8) INTERNAL HELPER UTILITIES
|
|
2482
|
-
* --------------------------------------------------------------------- */
|
|
2483
|
-
/** Returns true if the specified origin is the admin originator. */
|
|
2484
|
-
isAdminOriginator(originator) {
|
|
2485
|
-
return this.normalizeOriginator(originator) === this.adminOriginator;
|
|
2486
|
-
}
|
|
2487
|
-
/**
|
|
2488
|
-
* Checks if the given protocol is admin-reserved per BRC-100 rules:
|
|
2489
|
-
*
|
|
2490
|
-
* - Must not start with `admin` (admin-reserved)
|
|
2491
|
-
* - Must not start with `p ` (allows for future specially permissioned protocols)
|
|
2492
|
-
*
|
|
2493
|
-
* If it violates these rules and the caller is not admin, we consider it "admin-only."
|
|
2494
|
-
*/
|
|
2495
|
-
isAdminProtocol(proto) {
|
|
2496
|
-
const protocolName = proto[1];
|
|
2497
|
-
if (protocolName.startsWith('admin')) {
|
|
2498
|
-
return true;
|
|
2499
|
-
}
|
|
2500
|
-
return false;
|
|
2501
|
-
}
|
|
2502
|
-
/**
|
|
2503
|
-
* Checks if the given label is admin-reserved per BRC-100 rules:
|
|
2504
|
-
*
|
|
2505
|
-
* - Must not start with `admin` (admin-reserved)
|
|
2506
|
-
*
|
|
2507
|
-
* If it violates these rules and the caller is not admin, we consider it "admin-only."
|
|
2508
|
-
*/
|
|
2509
|
-
isAdminLabel(label) {
|
|
2510
|
-
if (label.startsWith('admin')) {
|
|
2511
|
-
return true;
|
|
2512
|
-
}
|
|
2513
|
-
return false;
|
|
2514
|
-
}
|
|
2515
|
-
/**
|
|
2516
|
-
* Checks if the given basket is admin-reserved per BRC-100 rules:
|
|
2517
|
-
*
|
|
2518
|
-
* - Must not start with `admin`
|
|
2519
|
-
* - Must not be `default` (some wallets use this for internal operations)
|
|
2520
|
-
* - Must not start with `p ` (future specially permissioned baskets)
|
|
2521
|
-
*/
|
|
2522
|
-
isAdminBasket(basket) {
|
|
2523
|
-
if (basket === 'default')
|
|
2524
|
-
return true;
|
|
2525
|
-
if (basket.startsWith('admin'))
|
|
2526
|
-
return true;
|
|
2527
|
-
return false;
|
|
2528
|
-
}
|
|
2529
|
-
/**
|
|
2530
|
-
* Returns true if we have a cached record that the permission identified by
|
|
2531
|
-
* `key` is valid and unexpired.
|
|
2532
|
-
*/
|
|
2533
|
-
isPermissionCached(key) {
|
|
2534
|
-
const entry = this.permissionCache.get(key);
|
|
2535
|
-
if (!entry)
|
|
2536
|
-
return false;
|
|
2537
|
-
if (Date.now() - entry.cachedAt > WalletPermissionsManager.CACHE_TTL_MS) {
|
|
2538
|
-
this.permissionCache.delete(key);
|
|
2539
|
-
return false;
|
|
2540
|
-
}
|
|
2541
|
-
if (this.isTokenExpired(entry.expiry)) {
|
|
2542
|
-
this.permissionCache.delete(key);
|
|
2543
|
-
return false;
|
|
2544
|
-
}
|
|
2545
|
-
return true;
|
|
2546
|
-
}
|
|
2547
|
-
/** Caches the fact that the permission for `key` is valid until `expiry`. */
|
|
2548
|
-
cachePermission(key, expiry) {
|
|
2549
|
-
this.permissionCache.set(key, { expiry, cachedAt: Date.now() });
|
|
2550
|
-
}
|
|
2551
|
-
/** Records that a non-spending permission was just granted so we can skip re-prompting briefly. */
|
|
2552
|
-
markRecentGrant(request) {
|
|
2553
|
-
if (request.type === 'spending')
|
|
2554
|
-
return;
|
|
2555
|
-
const key = this.buildRequestKey(request);
|
|
2556
|
-
if (!key)
|
|
2557
|
-
return;
|
|
2558
|
-
this.recentGrants.set(key, Date.now() + WalletPermissionsManager.RECENT_GRANT_COVER_MS);
|
|
2559
|
-
}
|
|
2560
|
-
/** Returns true if we are inside the short "cover window" immediately after granting permission. */
|
|
2561
|
-
isRecentlyGranted(key) {
|
|
2562
|
-
const expiry = this.recentGrants.get(key);
|
|
2563
|
-
if (!expiry)
|
|
2564
|
-
return false;
|
|
2565
|
-
if (Date.now() > expiry) {
|
|
2566
|
-
this.recentGrants.delete(key);
|
|
2567
|
-
return false;
|
|
2568
|
-
}
|
|
2569
|
-
return true;
|
|
2570
|
-
}
|
|
2571
|
-
/** Normalizes and canonicalizes originator domains (e.g., lowercase + drop default ports). */
|
|
2572
|
-
normalizeOriginator(originator) {
|
|
2573
|
-
if (!originator)
|
|
2574
|
-
return '';
|
|
2575
|
-
const trimmed = originator.trim();
|
|
2576
|
-
if (!trimmed) {
|
|
2577
|
-
return '';
|
|
2578
|
-
}
|
|
2579
|
-
try {
|
|
2580
|
-
const hasScheme = /^[a-zA-Z][a-zA-Z\d+\-.]*:\/\//.test(trimmed);
|
|
2581
|
-
const candidate = hasScheme ? trimmed : `https://${trimmed}`;
|
|
2582
|
-
const url = new URL(candidate);
|
|
2583
|
-
if (!url.hostname) {
|
|
2584
|
-
return trimmed.toLowerCase();
|
|
2585
|
-
}
|
|
2586
|
-
const hostname = url.hostname.toLowerCase();
|
|
2587
|
-
const needsBrackets = hostname.includes(':');
|
|
2588
|
-
const baseHost = needsBrackets ? `[${hostname}]` : hostname;
|
|
2589
|
-
const port = url.port;
|
|
2590
|
-
const defaultPort = WalletPermissionsManager.DEFAULT_PORTS[url.protocol];
|
|
2591
|
-
if (port && defaultPort && port === defaultPort) {
|
|
2592
|
-
return baseHost;
|
|
2593
|
-
}
|
|
2594
|
-
return port ? `${baseHost}:${port}` : baseHost;
|
|
2595
|
-
}
|
|
2596
|
-
catch (_a) {
|
|
2597
|
-
// Fall back to a conservative lowercase trim if URL parsing fails.
|
|
2598
|
-
return trimmed.toLowerCase();
|
|
2599
|
-
}
|
|
2600
|
-
}
|
|
2601
|
-
/**
|
|
2602
|
-
* Produces a normalized originator value along with the set of legacy
|
|
2603
|
-
* representations that should be considered when searching for existing
|
|
2604
|
-
* permission tokens (for backwards compatibility).
|
|
2605
|
-
*/
|
|
2606
|
-
prepareOriginator(originator) {
|
|
2607
|
-
const trimmed = originator === null || originator === void 0 ? void 0 : originator.trim();
|
|
2608
|
-
if (!trimmed) {
|
|
2609
|
-
throw new Error('Originator is required for permission checks.');
|
|
2610
|
-
}
|
|
2611
|
-
const normalized = this.normalizeOriginator(trimmed) || trimmed.toLowerCase();
|
|
2612
|
-
const lookupValues = Array.from(new Set([trimmed, normalized])).filter(Boolean);
|
|
2613
|
-
return { normalized, lookupValues };
|
|
2614
|
-
}
|
|
2615
|
-
/**
|
|
2616
|
-
* Builds a unique list of originator variants that should be searched when
|
|
2617
|
-
* looking up on-chain tokens (e.g., legacy raw + normalized forms).
|
|
2618
|
-
*/
|
|
2619
|
-
buildOriginatorLookupValues(...origins) {
|
|
2620
|
-
const variants = new Set();
|
|
2621
|
-
for (const origin of origins) {
|
|
2622
|
-
const trimmed = origin === null || origin === void 0 ? void 0 : origin.trim();
|
|
2623
|
-
if (trimmed) {
|
|
2624
|
-
variants.add(trimmed);
|
|
2625
|
-
}
|
|
2626
|
-
}
|
|
2627
|
-
return Array.from(variants);
|
|
2628
|
-
}
|
|
2629
|
-
/**
|
|
2630
|
-
* Builds a "map key" string so that identical requests (e.g. "protocol:domain:true:protoName:counterparty")
|
|
2631
|
-
* do not produce multiple user prompts.
|
|
2632
|
-
*/
|
|
2633
|
-
buildRequestKey(r) {
|
|
2634
|
-
var _a, _b, _c, _d, _e;
|
|
2635
|
-
const normalizedOriginator = this.normalizeOriginator(r.originator);
|
|
2636
|
-
switch (r.type) {
|
|
2637
|
-
case 'protocol':
|
|
2638
|
-
return `proto:${normalizedOriginator}:${!!r.privileged}:${(_a = r.protocolID) === null || _a === void 0 ? void 0 : _a.join(',')}:${r.counterparty}`;
|
|
2639
|
-
case 'basket':
|
|
2640
|
-
return `basket:${normalizedOriginator}:${r.basket}`;
|
|
2641
|
-
case 'certificate':
|
|
2642
|
-
return `cert:${normalizedOriginator}:${!!r.privileged}:${(_b = r.certificate) === null || _b === void 0 ? void 0 : _b.verifier}:${(_c = r.certificate) === null || _c === void 0 ? void 0 : _c.certType}:${(_d = r.certificate) === null || _d === void 0 ? void 0 : _d.fields.join('|')}`;
|
|
2643
|
-
case 'spending':
|
|
2644
|
-
return `spend:${normalizedOriginator}:${(_e = r.spending) === null || _e === void 0 ? void 0 : _e.satoshis}`;
|
|
2645
|
-
}
|
|
2646
|
-
}
|
|
2647
|
-
}
|
|
2648
|
-
exports.WalletPermissionsManager = WalletPermissionsManager;
|
|
2649
|
-
/** How long a cached permission remains valid (5 minutes). */
|
|
2650
|
-
WalletPermissionsManager.CACHE_TTL_MS = 5 * 60 * 1000;
|
|
2651
|
-
/** Window during which freshly granted permissions are auto-allowed (except spending). */
|
|
2652
|
-
WalletPermissionsManager.RECENT_GRANT_COVER_MS = 15 * 1000;
|
|
2653
|
-
/** Default ports used when normalizing originator values. */
|
|
2654
|
-
WalletPermissionsManager.DEFAULT_PORTS = {
|
|
2655
|
-
'http:': '80',
|
|
2656
|
-
'https:': '443'
|
|
2657
|
-
};
|
|
2658
|
-
/* ---------------------------------------------------------------------
|
|
2659
|
-
* 4) SEARCH / DECODE / DECRYPT ON-CHAIN TOKENS (PushDrop Scripts)
|
|
2660
|
-
* --------------------------------------------------------------------- */
|
|
2661
|
-
/**
|
|
2662
|
-
* We will use a administrative "permission token encryption" protocol to store fields
|
|
2663
|
-
* in each permission's PushDrop script. This ensures that only the user's wallet
|
|
2664
|
-
* can decrypt them. In practice, this data is not super sensitive, but we still
|
|
2665
|
-
* follow the principle of least exposure.
|
|
2666
|
-
*/
|
|
2667
|
-
WalletPermissionsManager.PERM_TOKEN_ENCRYPTION_PROTOCOL = [
|
|
2668
|
-
2,
|
|
2669
|
-
'admin permission token encryption'
|
|
2670
|
-
];
|
|
2671
|
-
/**
|
|
2672
|
-
* Similarly, we will use a "metadata encryption" protocol to preserve the confidentiality
|
|
2673
|
-
* of transaction descriptions and input/output descriptions from lower storage layers.
|
|
2674
|
-
*/
|
|
2675
|
-
WalletPermissionsManager.METADATA_ENCRYPTION_PROTOCOL = [
|
|
2676
|
-
2,
|
|
2677
|
-
'admin metadata encryption'
|
|
2678
|
-
];
|
|
2679
|
-
//# sourceMappingURL=WalletPermissionsManager.js.map
|