@bopen-io/wallet-toolbox 2.6.2-brc153.5 → 2.15.0-bopen.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +789 -1
- package/LICENSES/Open-BSV-License-4-wallet-pre-2026.txt +28 -0
- package/README.md +889 -14
- package/THIRD_PARTY_NOTICES.md +35 -0
- package/docs/README.md +44 -31
- package/docs/action-batch-planning.md +80 -37
- package/docs/client.md +11241 -2525
- package/docs/identity-verification.md +218 -0
- package/docs/local-first-chaintracks.md +129 -0
- package/docs/managed-change-liquidity.md +258 -0
- package/docs/managed-change-policy.md +14 -1
- package/docs/monitor.md +411 -85
- package/docs/no-send-expiry.md +167 -0
- package/docs/prepared-beef.md +197 -0
- package/docs/services.md +5163 -2157
- package/docs/setup.md +153 -57
- package/docs/storage.md +5051 -851
- package/docs/sync-transfer.md +144 -0
- package/docs/wab-shamir.md +5 -1
- package/docs/wallet.md +10202 -10670
- package/out/src/CWIStyleWalletManager.d.ts +39 -31
- package/out/src/CWIStyleWalletManager.d.ts.map +1 -1
- package/out/src/CWIStyleWalletManager.js +309 -258
- package/out/src/CWIStyleWalletManager.js.map +1 -1
- package/out/src/Setup.d.ts +24 -0
- package/out/src/Setup.d.ts.map +1 -1
- package/out/src/Setup.js +30 -2
- package/out/src/Setup.js.map +1 -1
- package/out/src/SetupClient.d.ts +3 -0
- package/out/src/SetupClient.d.ts.map +1 -1
- package/out/src/SetupClient.js +1 -0
- package/out/src/SetupClient.js.map +1 -1
- package/out/src/SetupWallet.d.ts +3 -0
- package/out/src/SetupWallet.d.ts.map +1 -1
- package/out/src/ShamirWalletManager.d.ts.map +1 -1
- package/out/src/ShamirWalletManager.js +34 -19
- package/out/src/ShamirWalletManager.js.map +1 -1
- package/out/src/SimpleWalletManager.d.ts.map +1 -1
- package/out/src/SimpleWalletManager.js +7 -6
- package/out/src/SimpleWalletManager.js.map +1 -1
- package/out/src/Wallet.d.ts +54 -14
- package/out/src/Wallet.d.ts.map +1 -1
- package/out/src/Wallet.js +216 -114
- package/out/src/Wallet.js.map +1 -1
- package/out/src/WalletAuthenticationManager.d.ts +32 -0
- package/out/src/WalletAuthenticationManager.d.ts.map +1 -1
- package/out/src/WalletAuthenticationManager.js +531 -78
- package/out/src/WalletAuthenticationManager.js.map +1 -1
- package/out/src/WalletLogger.js +1 -1
- package/out/src/WalletLogger.js.map +1 -1
- package/out/src/WalletPermissionsManager.d.ts +101 -43
- package/out/src/WalletPermissionsManager.d.ts.map +1 -1
- package/out/src/WalletPermissionsManager.js +897 -414
- package/out/src/WalletPermissionsManager.js.map +1 -1
- package/out/src/WalletSettingsManager.d.ts +3 -2
- package/out/src/WalletSettingsManager.d.ts.map +1 -1
- package/out/src/WalletSettingsManager.js +143 -8
- package/out/src/WalletSettingsManager.js.map +1 -1
- package/out/src/entropy/EntropyCollector.d.ts.map +1 -1
- package/out/src/entropy/EntropyCollector.js +3 -2
- package/out/src/entropy/EntropyCollector.js.map +1 -1
- package/out/src/fundWalletP2PKH.d.ts.map +1 -1
- package/out/src/fundWalletP2PKH.js +143 -44
- package/out/src/fundWalletP2PKH.js.map +1 -1
- package/out/src/index.client.d.ts +6 -0
- package/out/src/index.client.d.ts.map +1 -1
- package/out/src/index.client.js +16 -1
- package/out/src/index.client.js.map +1 -1
- package/out/src/index.mobile.d.ts +7 -0
- package/out/src/index.mobile.d.ts.map +1 -1
- package/out/src/index.mobile.js +17 -1
- package/out/src/index.mobile.js.map +1 -1
- package/out/src/mockchain/MockChainTracker.d.ts.map +1 -1
- package/out/src/mockchain/MockChainTracker.js +5 -5
- package/out/src/mockchain/MockChainTracker.js.map +1 -1
- package/out/src/mockchain/MockServices.d.ts +2 -0
- package/out/src/mockchain/MockServices.d.ts.map +1 -1
- package/out/src/mockchain/MockServices.js +54 -14
- package/out/src/mockchain/MockServices.js.map +1 -1
- package/out/src/monitor/Monitor.d.ts +51 -0
- package/out/src/monitor/Monitor.d.ts.map +1 -1
- package/out/src/monitor/Monitor.js +282 -41
- package/out/src/monitor/Monitor.js.map +1 -1
- package/out/src/monitor/MonitorDaemon.d.ts +2 -0
- package/out/src/monitor/MonitorDaemon.d.ts.map +1 -1
- package/out/src/monitor/MonitorDaemon.js +73 -17
- package/out/src/monitor/MonitorDaemon.js.map +1 -1
- package/out/src/monitor/monitorValidation.d.ts +12 -0
- package/out/src/monitor/monitorValidation.d.ts.map +1 -0
- package/out/src/monitor/monitorValidation.js +133 -0
- package/out/src/monitor/monitorValidation.js.map +1 -0
- package/out/src/monitor/tasks/TaskArcSSE.d.ts +6 -1
- package/out/src/monitor/tasks/TaskArcSSE.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskArcSSE.js +117 -74
- package/out/src/monitor/tasks/TaskArcSSE.js.map +1 -1
- package/out/src/monitor/tasks/TaskCheckForProofs.d.ts +5 -0
- package/out/src/monitor/tasks/TaskCheckForProofs.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskCheckForProofs.js +29 -24
- package/out/src/monitor/tasks/TaskCheckForProofs.js.map +1 -1
- package/out/src/monitor/tasks/TaskCheckNoSends.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskCheckNoSends.js +11 -3
- package/out/src/monitor/tasks/TaskCheckNoSends.js.map +1 -1
- package/out/src/monitor/tasks/TaskFailAbandoned.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskFailAbandoned.js +9 -4
- package/out/src/monitor/tasks/TaskFailAbandoned.js.map +1 -1
- package/out/src/monitor/tasks/TaskNewHeader.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskNewHeader.js +3 -1
- package/out/src/monitor/tasks/TaskNewHeader.js.map +1 -1
- package/out/src/monitor/tasks/TaskNoSendExpiry.d.ts +19 -0
- package/out/src/monitor/tasks/TaskNoSendExpiry.d.ts.map +1 -0
- package/out/src/monitor/tasks/TaskNoSendExpiry.js +47 -0
- package/out/src/monitor/tasks/TaskNoSendExpiry.js.map +1 -0
- package/out/src/monitor/tasks/TaskReconcilePendingTransactions.d.ts +27 -0
- package/out/src/monitor/tasks/TaskReconcilePendingTransactions.d.ts.map +1 -0
- package/out/src/monitor/tasks/TaskReconcilePendingTransactions.js +242 -0
- package/out/src/monitor/tasks/TaskReconcilePendingTransactions.js.map +1 -0
- package/out/src/monitor/tasks/TaskReorg.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskReorg.js +4 -4
- package/out/src/monitor/tasks/TaskReorg.js.map +1 -1
- package/out/src/monitor/tasks/TaskReviewDoubleSpends.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskReviewDoubleSpends.js +31 -9
- package/out/src/monitor/tasks/TaskReviewDoubleSpends.js.map +1 -1
- package/out/src/monitor/tasks/TaskReviewProvenTxs.d.ts +18 -1
- package/out/src/monitor/tasks/TaskReviewProvenTxs.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskReviewProvenTxs.js +99 -21
- package/out/src/monitor/tasks/TaskReviewProvenTxs.js.map +1 -1
- package/out/src/monitor/tasks/TaskReviewUtxos.d.ts +33 -6
- package/out/src/monitor/tasks/TaskReviewUtxos.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskReviewUtxos.js +189 -13
- package/out/src/monitor/tasks/TaskReviewUtxos.js.map +1 -1
- package/out/src/monitor/tasks/TaskSendWaiting.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskSendWaiting.js +52 -11
- package/out/src/monitor/tasks/TaskSendWaiting.js.map +1 -1
- package/out/src/monitor/tasks/TaskUnFail.d.ts +1 -0
- package/out/src/monitor/tasks/TaskUnFail.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskUnFail.js +26 -8
- package/out/src/monitor/tasks/TaskUnFail.js.map +1 -1
- package/out/src/monitor/tasks/index.all.d.ts +2 -0
- package/out/src/monitor/tasks/index.all.d.ts.map +1 -1
- package/out/src/monitor/tasks/index.all.js +2 -0
- package/out/src/monitor/tasks/index.all.js.map +1 -1
- package/out/src/sdk/ActionBatch.interfaces.d.ts +23 -0
- package/out/src/sdk/ActionBatch.interfaces.d.ts.map +1 -1
- package/out/src/sdk/PrivilegedKeyManager.d.ts.map +1 -1
- package/out/src/sdk/PrivilegedKeyManager.js +3 -2
- package/out/src/sdk/PrivilegedKeyManager.js.map +1 -1
- package/out/src/sdk/WERR_errors.d.ts +23 -0
- package/out/src/sdk/WERR_errors.d.ts.map +1 -1
- package/out/src/sdk/WERR_errors.js +51 -7
- package/out/src/sdk/WERR_errors.js.map +1 -1
- package/out/src/sdk/WalletError.d.ts.map +1 -1
- package/out/src/sdk/WalletError.js +7 -21
- package/out/src/sdk/WalletError.js.map +1 -1
- package/out/src/sdk/WalletErrorFromJson.d.ts.map +1 -1
- package/out/src/sdk/WalletErrorFromJson.js +121 -3
- package/out/src/sdk/WalletErrorFromJson.js.map +1 -1
- package/out/src/sdk/WalletServices.interfaces.d.ts +45 -2
- package/out/src/sdk/WalletServices.interfaces.d.ts.map +1 -1
- package/out/src/sdk/WalletStorage.interfaces.d.ts +87 -4
- package/out/src/sdk/WalletStorage.interfaces.d.ts.map +1 -1
- package/out/src/sdk/types.d.ts +3 -2
- package/out/src/sdk/types.d.ts.map +1 -1
- package/out/src/sdk/types.js +3 -2
- package/out/src/sdk/types.js.map +1 -1
- package/out/src/services/ServiceCollection.js +2 -2
- package/out/src/services/ServiceCollection.js.map +1 -1
- package/out/src/services/Services.d.ts +5 -0
- package/out/src/services/Services.d.ts.map +1 -1
- package/out/src/services/Services.js +346 -120
- package/out/src/services/Services.js.map +1 -1
- package/out/src/services/chaintracker/BHServiceClient.d.ts +21 -4
- package/out/src/services/chaintracker/BHServiceClient.d.ts.map +1 -1
- package/out/src/services/chaintracker/BHServiceClient.js +269 -66
- package/out/src/services/chaintracker/BHServiceClient.js.map +1 -1
- package/out/src/services/chaintracker/ChaintracksChainTracker.d.ts +25 -3
- package/out/src/services/chaintracker/ChaintracksChainTracker.d.ts.map +1 -1
- package/out/src/services/chaintracker/ChaintracksChainTracker.js +188 -53
- package/out/src/services/chaintracker/ChaintracksChainTracker.js.map +1 -1
- package/out/src/services/chaintracker/LocalChainTracker.d.ts +122 -0
- package/out/src/services/chaintracker/LocalChainTracker.d.ts.map +1 -0
- package/out/src/services/chaintracker/LocalChainTracker.js +465 -0
- package/out/src/services/chaintracker/LocalChainTracker.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.js +59 -7
- package/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataCacheApi.d.ts +48 -0
- package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataCacheApi.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataCacheApi.js +3 -0
- package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataCacheApi.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataValidatorApi.d.ts +70 -0
- package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataValidatorApi.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataValidatorApi.js +21 -0
- package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataValidatorApi.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.d.ts +6 -0
- package/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.d.ts +53 -0
- package/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Api/ChaintracksFetchApi.d.ts +9 -2
- package/out/src/services/chaintracker/chaintracks/Api/ChaintracksFetchApi.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts +9 -0
- package/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts +28 -3
- package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Chaintracks.js +282 -64
- package/out/src/services/chaintracker/chaintracks/Chaintracks.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/ChaintracksService.d.ts +16 -0
- package/out/src/services/chaintracker/chaintracks/ChaintracksService.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/ChaintracksService.js +150 -26
- package/out/src/services/chaintracker/chaintracks/ChaintracksService.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts +30 -1
- package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js +348 -30
- package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.d.ts +32 -1
- package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.js +378 -44
- package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js +28 -3
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js +33 -9
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorChaintracks.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorChaintracks.js +4 -2
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorChaintracks.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.d.ts +2 -0
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js +17 -4
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.d.ts +2 -0
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js +40 -20
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js +14 -0
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.d.ts +6 -0
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.js +56 -9
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorTeranodeP2P.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorTeranodeP2P.js +6 -3
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorTeranodeP2P.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.d.ts +4 -0
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js +27 -9
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts +8 -0
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js +49 -5
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js +90 -21
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.d.ts +3 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.js +185 -38
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js +59 -6
- package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.d.ts +2 -0
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.js +89 -39
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts +10 -0
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js +230 -28
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.d.ts +2 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js +265 -96
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.d.ts +8 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js +248 -87
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts +3 -0
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js +121 -35
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/configureChaintracksIngestors.d.ts +8 -0
- package/out/src/services/chaintracker/chaintracks/configureChaintracksIngestors.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/configureChaintracksIngestors.js +6 -3
- package/out/src/services/chaintracker/chaintracks/configureChaintracksIngestors.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js +1 -7
- package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createKnexChaintracks.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createKnexChaintracks.js +1 -7
- package/out/src/services/chaintracker/chaintracks/createKnexChaintracks.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.js +1 -7
- package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/index.all.d.ts +3 -0
- package/out/src/services/chaintracker/chaintracks/index.all.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/index.all.js +3 -0
- package/out/src/services/chaintracker/chaintracks/index.all.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/index.mobile.d.ts +5 -0
- package/out/src/services/chaintracker/chaintracks/index.mobile.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/index.mobile.js +5 -0
- package/out/src/services/chaintracker/chaintracks/index.mobile.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataCacheFs.d.ts +51 -0
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataCacheFs.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataCacheFs.js +394 -0
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataCacheFs.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts +45 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js +733 -166
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.js +17 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataValidator.worker.d.ts +32 -0
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataValidator.worker.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataValidator.worker.js +40 -0
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataValidator.worker.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js +99 -30
- package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts +3 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js +23 -15
- package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.d.ts +38 -4
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.js +191 -47
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.d.ts +2 -1
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.js +57 -11
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/DurableFileBulkFileDownloadBudget.d.ts +48 -0
- package/out/src/services/chaintracker/chaintracks/util/DurableFileBulkFileDownloadBudget.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/DurableFileBulkFileDownloadBudget.js +280 -0
- package/out/src/services/chaintracker/chaintracks/util/DurableFileBulkFileDownloadBudget.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/FixedWindowBulkFileDownloadBudget.d.ts +30 -0
- package/out/src/services/chaintracker/chaintracks/util/FixedWindowBulkFileDownloadBudget.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/FixedWindowBulkFileDownloadBudget.js +57 -0
- package/out/src/services/chaintracker/chaintracks/util/FixedWindowBulkFileDownloadBudget.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/HeightRange.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/HeightRange.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/InlineBulkFileDataValidator.d.ts +14 -0
- package/out/src/services/chaintracker/chaintracks/util/InlineBulkFileDataValidator.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/InlineBulkFileDataValidator.js +148 -0
- package/out/src/services/chaintracker/chaintracks/util/InlineBulkFileDataValidator.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/NodeBulkFileDataValidator.d.ts +41 -0
- package/out/src/services/chaintracker/chaintracks/util/NodeBulkFileDataValidator.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/NodeBulkFileDataValidator.js +271 -0
- package/out/src/services/chaintracker/chaintracks/util/NodeBulkFileDataValidator.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.d.ts +3 -0
- package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.js +15 -0
- package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts +17 -4
- package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js +362 -105
- package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/safeDiagnostic.d.ts +4 -0
- package/out/src/services/chaintracker/chaintracks/util/safeDiagnostic.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/safeDiagnostic.js +33 -0
- package/out/src/services/chaintracker/chaintracks/util/safeDiagnostic.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js.map +1 -1
- package/out/src/services/chaintracker/index.all.d.ts +1 -0
- package/out/src/services/chaintracker/index.all.d.ts.map +1 -1
- package/out/src/services/chaintracker/index.all.js +1 -0
- package/out/src/services/chaintracker/index.all.js.map +1 -1
- package/out/src/services/chaintracker/index.client.d.ts +1 -0
- package/out/src/services/chaintracker/index.client.d.ts.map +1 -1
- package/out/src/services/chaintracker/index.client.js +1 -0
- package/out/src/services/chaintracker/index.client.js.map +1 -1
- package/out/src/services/chaintracker/index.mobile.d.ts +1 -0
- package/out/src/services/chaintracker/index.mobile.d.ts.map +1 -1
- package/out/src/services/chaintracker/index.mobile.js +1 -0
- package/out/src/services/chaintracker/index.mobile.js.map +1 -1
- package/out/src/services/classifyOutputUtxo.d.ts +25 -0
- package/out/src/services/classifyOutputUtxo.d.ts.map +1 -0
- package/out/src/services/classifyOutputUtxo.js +96 -0
- package/out/src/services/classifyOutputUtxo.js.map +1 -0
- package/out/src/services/createDefaultWalletServicesOptions.d.ts +16 -3
- package/out/src/services/createDefaultWalletServicesOptions.d.ts.map +1 -1
- package/out/src/services/createDefaultWalletServicesOptions.js +38 -8
- package/out/src/services/createDefaultWalletServicesOptions.js.map +1 -1
- package/out/src/services/fiatRateValidation.d.ts +12 -0
- package/out/src/services/fiatRateValidation.d.ts.map +1 -0
- package/out/src/services/fiatRateValidation.js +138 -0
- package/out/src/services/fiatRateValidation.js.map +1 -0
- package/out/src/services/getCanonicalMerklePath.d.ts +15 -0
- package/out/src/services/getCanonicalMerklePath.d.ts.map +1 -0
- package/out/src/services/getCanonicalMerklePath.js +90 -0
- package/out/src/services/getCanonicalMerklePath.js.map +1 -0
- package/out/src/services/providers/ARC.d.ts +3 -16
- package/out/src/services/providers/ARC.d.ts.map +1 -1
- package/out/src/services/providers/ARC.js +36 -37
- package/out/src/services/providers/ARC.js.map +1 -1
- package/out/src/services/providers/ArcSSEClient.d.ts +38 -23
- package/out/src/services/providers/ArcSSEClient.d.ts.map +1 -1
- package/out/src/services/providers/ArcSSEClient.js +384 -63
- package/out/src/services/providers/ArcSSEClient.js.map +1 -1
- package/out/src/services/providers/Arcade.d.ts +11 -1
- package/out/src/services/providers/Arcade.d.ts.map +1 -1
- package/out/src/services/providers/Arcade.js +111 -33
- package/out/src/services/providers/Arcade.js.map +1 -1
- package/out/src/services/providers/Bitails.d.ts +3 -0
- package/out/src/services/providers/Bitails.d.ts.map +1 -1
- package/out/src/services/providers/Bitails.js +79 -12
- package/out/src/services/providers/Bitails.js.map +1 -1
- package/out/src/services/providers/SdkWhatsOnChain.d.ts +8 -2
- package/out/src/services/providers/SdkWhatsOnChain.d.ts.map +1 -1
- package/out/src/services/providers/SdkWhatsOnChain.js +83 -10
- package/out/src/services/providers/SdkWhatsOnChain.js.map +1 -1
- package/out/src/services/providers/WhatsOnChain.d.ts +3 -0
- package/out/src/services/providers/WhatsOnChain.d.ts.map +1 -1
- package/out/src/services/providers/WhatsOnChain.js +221 -69
- package/out/src/services/providers/WhatsOnChain.js.map +1 -1
- package/out/src/services/providers/arcProviderConfig.d.ts +27 -0
- package/out/src/services/providers/arcProviderConfig.d.ts.map +1 -0
- package/out/src/services/providers/arcProviderConfig.js +83 -0
- package/out/src/services/providers/arcProviderConfig.js.map +1 -0
- package/out/src/services/providers/arcTxDataValidation.d.ts +4 -0
- package/out/src/services/providers/arcTxDataValidation.d.ts.map +1 -0
- package/out/src/services/providers/arcTxDataValidation.js +92 -0
- package/out/src/services/providers/arcTxDataValidation.js.map +1 -0
- package/out/src/services/providers/arcadeStatus.d.ts +18 -0
- package/out/src/services/providers/arcadeStatus.d.ts.map +1 -0
- package/out/src/services/providers/arcadeStatus.js +56 -0
- package/out/src/services/providers/arcadeStatus.js.map +1 -0
- package/out/src/services/providers/exchangeRates.d.ts +3 -3
- package/out/src/services/providers/exchangeRates.d.ts.map +1 -1
- package/out/src/services/providers/exchangeRates.js +153 -226
- package/out/src/services/providers/exchangeRates.js.map +1 -1
- package/out/src/services/providers/getBeefForTxid.d.ts.map +1 -1
- package/out/src/services/providers/getBeefForTxid.js.map +1 -1
- package/out/src/services/providers/whatsOnChainHelpers.d.ts +2 -2
- package/out/src/services/providers/whatsOnChainHelpers.d.ts.map +1 -1
- package/out/src/services/providers/whatsOnChainHelpers.js +11 -8
- package/out/src/services/providers/whatsOnChainHelpers.js.map +1 -1
- package/out/src/services/validateMerklePathResult.d.ts +30 -0
- package/out/src/services/validateMerklePathResult.d.ts.map +1 -0
- package/out/src/services/validateMerklePathResult.js +272 -0
- package/out/src/services/validateMerklePathResult.js.map +1 -0
- package/out/src/services/validatePostBeefResult.d.ts +17 -0
- package/out/src/services/validatePostBeefResult.d.ts.map +1 -0
- package/out/src/services/validatePostBeefResult.js +334 -0
- package/out/src/services/validatePostBeefResult.js.map +1 -0
- package/out/src/services/validateRawTxResult.d.ts +6 -0
- package/out/src/services/validateRawTxResult.d.ts.map +1 -0
- package/out/src/services/validateRawTxResult.js +77 -0
- package/out/src/services/validateRawTxResult.js.map +1 -0
- package/out/src/services/validateScriptHashHistoryResult.d.ts +5 -0
- package/out/src/services/validateScriptHashHistoryResult.d.ts.map +1 -0
- package/out/src/services/validateScriptHashHistoryResult.js +99 -0
- package/out/src/services/validateScriptHashHistoryResult.js.map +1 -0
- package/out/src/services/validateStatusForTxidsResult.d.ts +8 -0
- package/out/src/services/validateStatusForTxidsResult.d.ts.map +1 -0
- package/out/src/services/validateStatusForTxidsResult.js +181 -0
- package/out/src/services/validateStatusForTxidsResult.js.map +1 -0
- package/out/src/services/validateUtxoStatusResult.d.ts +6 -0
- package/out/src/services/validateUtxoStatusResult.d.ts.map +1 -0
- package/out/src/services/validateUtxoStatusResult.js +126 -0
- package/out/src/services/validateUtxoStatusResult.js.map +1 -0
- package/out/src/signer/actionBatch/ActionBatchPlanner.d.ts +3 -2
- package/out/src/signer/actionBatch/ActionBatchPlanner.d.ts.map +1 -1
- package/out/src/signer/actionBatch/ActionBatchPlanner.js +29 -6
- package/out/src/signer/actionBatch/ActionBatchPlanner.js.map +1 -1
- package/out/src/signer/actionBatch/ActionBatchWorkspace.d.ts +8 -5
- package/out/src/signer/actionBatch/ActionBatchWorkspace.d.ts.map +1 -1
- package/out/src/signer/actionBatch/ActionBatchWorkspace.js +186 -73
- package/out/src/signer/actionBatch/ActionBatchWorkspace.js.map +1 -1
- package/out/src/signer/actionBatch/actionBatchBootstrap.d.ts +2 -2
- package/out/src/signer/actionBatch/actionBatchBootstrap.d.ts.map +1 -1
- package/out/src/signer/actionBatch/actionBatchBootstrap.js +3 -3
- package/out/src/signer/actionBatch/actionBatchBootstrap.js.map +1 -1
- package/out/src/signer/methods/acquireDirectCertificate.d.ts +3 -2
- package/out/src/signer/methods/acquireDirectCertificate.d.ts.map +1 -1
- package/out/src/signer/methods/acquireDirectCertificate.js.map +1 -1
- package/out/src/signer/methods/buildSignableTransaction.d.ts +6 -5
- package/out/src/signer/methods/buildSignableTransaction.d.ts.map +1 -1
- package/out/src/signer/methods/buildSignableTransaction.js +6 -11
- package/out/src/signer/methods/buildSignableTransaction.js.map +1 -1
- package/out/src/signer/methods/createAction.d.ts +4 -3
- package/out/src/signer/methods/createAction.d.ts.map +1 -1
- package/out/src/signer/methods/createAction.js +3 -1
- package/out/src/signer/methods/createAction.js.map +1 -1
- package/out/src/signer/methods/createNoSendExpiryAction.d.ts +7 -0
- package/out/src/signer/methods/createNoSendExpiryAction.d.ts.map +1 -0
- package/out/src/signer/methods/createNoSendExpiryAction.js +254 -0
- package/out/src/signer/methods/createNoSendExpiryAction.js.map +1 -0
- package/out/src/signer/methods/internalizeAction.d.ts.map +1 -1
- package/out/src/signer/methods/internalizeAction.js +9 -5
- package/out/src/signer/methods/internalizeAction.js.map +1 -1
- package/out/src/signer/methods/proveCertificate.d.ts +3 -2
- package/out/src/signer/methods/proveCertificate.d.ts.map +1 -1
- package/out/src/signer/methods/proveCertificate.js.map +1 -1
- package/out/src/signer/methods/signAction.d.ts.map +1 -1
- package/out/src/signer/methods/signAction.js +12 -2
- package/out/src/signer/methods/signAction.js.map +1 -1
- package/out/src/signer/methods/verifyUnlockScripts.d.ts.map +1 -1
- package/out/src/signer/methods/verifyUnlockScripts.js +12 -17
- package/out/src/signer/methods/verifyUnlockScripts.js.map +1 -1
- package/out/src/storage/StorageIdb.d.ts +11 -3
- package/out/src/storage/StorageIdb.d.ts.map +1 -1
- package/out/src/storage/StorageIdb.js +134 -44
- package/out/src/storage/StorageIdb.js.map +1 -1
- package/out/src/storage/StorageKnex.d.ts +71 -7
- package/out/src/storage/StorageKnex.d.ts.map +1 -1
- package/out/src/storage/StorageKnex.js +616 -262
- package/out/src/storage/StorageKnex.js.map +1 -1
- package/out/src/storage/StorageProvider.d.ts +41 -10
- package/out/src/storage/StorageProvider.d.ts.map +1 -1
- package/out/src/storage/StorageProvider.js +397 -107
- package/out/src/storage/StorageProvider.js.map +1 -1
- package/out/src/storage/StorageReader.d.ts +9 -3
- package/out/src/storage/StorageReader.d.ts.map +1 -1
- package/out/src/storage/StorageReader.js +21 -43
- package/out/src/storage/StorageReader.js.map +1 -1
- package/out/src/storage/StorageReaderWriter.d.ts +4 -0
- package/out/src/storage/StorageReaderWriter.d.ts.map +1 -1
- package/out/src/storage/StorageReaderWriter.js +68 -38
- package/out/src/storage/StorageReaderWriter.js.map +1 -1
- package/out/src/storage/StorageSyncReader.d.ts +1 -1
- package/out/src/storage/StorageSyncReader.d.ts.map +1 -1
- package/out/src/storage/StorageSyncReader.js +3 -36
- package/out/src/storage/StorageSyncReader.js.map +1 -1
- package/out/src/storage/WalletStorageManager.d.ts +31 -6
- package/out/src/storage/WalletStorageManager.d.ts.map +1 -1
- package/out/src/storage/WalletStorageManager.js +166 -75
- package/out/src/storage/WalletStorageManager.js.map +1 -1
- package/out/src/storage/adminServer/adminServer.d.ts +3 -1
- package/out/src/storage/adminServer/adminServer.d.ts.map +1 -1
- package/out/src/storage/adminServer/adminServer.js +41 -90
- package/out/src/storage/adminServer/adminServer.js.map +1 -1
- package/out/src/storage/adminServer/adminUi.d.ts.map +1 -1
- package/out/src/storage/adminServer/adminUi.js +32 -9
- package/out/src/storage/adminServer/adminUi.js.map +1 -1
- package/out/src/storage/adminServer/reqReviewQuery.d.ts +41 -0
- package/out/src/storage/adminServer/reqReviewQuery.d.ts.map +1 -0
- package/out/src/storage/adminServer/reqReviewQuery.js +67 -0
- package/out/src/storage/adminServer/reqReviewQuery.js.map +1 -0
- package/out/src/storage/adminServer/reviewUtxos.d.ts +27 -0
- package/out/src/storage/adminServer/reviewUtxos.d.ts.map +1 -0
- package/out/src/storage/adminServer/reviewUtxos.js +62 -0
- package/out/src/storage/adminServer/reviewUtxos.js.map +1 -0
- package/out/src/storage/idbHelpers.d.ts.map +1 -1
- package/out/src/storage/idbHelpers.js +14 -2
- package/out/src/storage/idbHelpers.js.map +1 -1
- package/out/src/storage/index.all.d.ts +4 -0
- package/out/src/storage/index.all.d.ts.map +1 -1
- package/out/src/storage/index.all.js +4 -0
- package/out/src/storage/index.all.js.map +1 -1
- package/out/src/storage/index.client.d.ts +1 -0
- package/out/src/storage/index.client.d.ts.map +1 -1
- package/out/src/storage/index.client.js +1 -0
- package/out/src/storage/index.client.js.map +1 -1
- package/out/src/storage/index.mobile.d.ts +1 -0
- package/out/src/storage/index.mobile.d.ts.map +1 -1
- package/out/src/storage/index.mobile.js +1 -0
- package/out/src/storage/index.mobile.js.map +1 -1
- package/out/src/storage/knexPostgres.d.ts +16 -0
- package/out/src/storage/knexPostgres.d.ts.map +1 -0
- package/out/src/storage/knexPostgres.js +34 -0
- package/out/src/storage/knexPostgres.js.map +1 -0
- package/out/src/storage/methods/ListActionsSpecOp.d.ts +2 -2
- package/out/src/storage/methods/ListActionsSpecOp.d.ts.map +1 -1
- package/out/src/storage/methods/ListActionsSpecOp.js.map +1 -1
- package/out/src/storage/methods/ListOutputsSpecOp.d.ts +7 -4
- package/out/src/storage/methods/ListOutputsSpecOp.d.ts.map +1 -1
- package/out/src/storage/methods/ListOutputsSpecOp.js +5 -44
- package/out/src/storage/methods/ListOutputsSpecOp.js.map +1 -1
- package/out/src/storage/methods/actionBatch.d.ts +9 -2
- package/out/src/storage/methods/actionBatch.d.ts.map +1 -1
- package/out/src/storage/methods/actionBatch.js +260 -67
- package/out/src/storage/methods/actionBatch.js.map +1 -1
- package/out/src/storage/methods/actionBatchBlobs.d.ts +2 -0
- package/out/src/storage/methods/actionBatchBlobs.d.ts.map +1 -1
- package/out/src/storage/methods/actionBatchBlobs.js +47 -26
- package/out/src/storage/methods/actionBatchBlobs.js.map +1 -1
- package/out/src/storage/methods/actionBatchValidation.d.ts.map +1 -1
- package/out/src/storage/methods/actionBatchValidation.js +22 -30
- package/out/src/storage/methods/actionBatchValidation.js.map +1 -1
- package/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts +7 -2
- package/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts.map +1 -1
- package/out/src/storage/methods/attemptToPostReqsToNetwork.js +59 -110
- package/out/src/storage/methods/attemptToPostReqsToNetwork.js.map +1 -1
- package/out/src/storage/methods/availableManagedChange.d.ts +8 -1
- package/out/src/storage/methods/availableManagedChange.d.ts.map +1 -1
- package/out/src/storage/methods/availableManagedChange.js.map +1 -1
- package/out/src/storage/methods/createAction.d.ts +60 -3
- package/out/src/storage/methods/createAction.d.ts.map +1 -1
- package/out/src/storage/methods/createAction.js +390 -105
- package/out/src/storage/methods/createAction.js.map +1 -1
- package/out/src/storage/methods/generateChange.d.ts +15 -5
- package/out/src/storage/methods/generateChange.d.ts.map +1 -1
- package/out/src/storage/methods/generateChange.js +187 -27
- package/out/src/storage/methods/generateChange.js.map +1 -1
- package/out/src/storage/methods/getBeefForTransaction.js +5 -7
- package/out/src/storage/methods/getBeefForTransaction.js.map +1 -1
- package/out/src/storage/methods/getSyncChunk.d.ts.map +1 -1
- package/out/src/storage/methods/getSyncChunk.js +42 -11
- package/out/src/storage/methods/getSyncChunk.js.map +1 -1
- package/out/src/storage/methods/internalizeAction.d.ts +3 -3
- package/out/src/storage/methods/internalizeAction.d.ts.map +1 -1
- package/out/src/storage/methods/internalizeAction.js +171 -133
- package/out/src/storage/methods/internalizeAction.js.map +1 -1
- package/out/src/storage/methods/listActionsIdb.d.ts +3 -2
- package/out/src/storage/methods/listActionsIdb.d.ts.map +1 -1
- package/out/src/storage/methods/listActionsIdb.js +2 -2
- package/out/src/storage/methods/listActionsIdb.js.map +1 -1
- package/out/src/storage/methods/listActionsKnex.d.ts +3 -2
- package/out/src/storage/methods/listActionsKnex.d.ts.map +1 -1
- package/out/src/storage/methods/listActionsKnex.js +21 -11
- package/out/src/storage/methods/listActionsKnex.js.map +1 -1
- package/out/src/storage/methods/listCertificates.d.ts +3 -2
- package/out/src/storage/methods/listCertificates.d.ts.map +1 -1
- package/out/src/storage/methods/listCertificates.js.map +1 -1
- package/out/src/storage/methods/listOutputsIdb.d.ts +3 -2
- package/out/src/storage/methods/listOutputsIdb.d.ts.map +1 -1
- package/out/src/storage/methods/listOutputsIdb.js +25 -18
- package/out/src/storage/methods/listOutputsIdb.js.map +1 -1
- package/out/src/storage/methods/listOutputsKnex.d.ts +3 -2
- package/out/src/storage/methods/listOutputsKnex.d.ts.map +1 -1
- package/out/src/storage/methods/listOutputsKnex.js +31 -30
- package/out/src/storage/methods/listOutputsKnex.js.map +1 -1
- package/out/src/storage/methods/managedChangePolicy.d.ts +44 -0
- package/out/src/storage/methods/managedChangePolicy.d.ts.map +1 -0
- package/out/src/storage/methods/managedChangePolicy.js +58 -0
- package/out/src/storage/methods/managedChangePolicy.js.map +1 -0
- package/out/src/storage/methods/maxPossibleSatoshis.d.ts +13 -0
- package/out/src/storage/methods/maxPossibleSatoshis.d.ts.map +1 -0
- package/out/src/storage/methods/maxPossibleSatoshis.js +16 -0
- package/out/src/storage/methods/maxPossibleSatoshis.js.map +1 -0
- package/out/src/storage/methods/noSendExpiry.d.ts +11 -0
- package/out/src/storage/methods/noSendExpiry.d.ts.map +1 -0
- package/out/src/storage/methods/noSendExpiry.js +359 -0
- package/out/src/storage/methods/noSendExpiry.js.map +1 -0
- package/out/src/storage/methods/noSendExpiryLifecycle.d.ts +14 -0
- package/out/src/storage/methods/noSendExpiryLifecycle.d.ts.map +1 -0
- package/out/src/storage/methods/noSendExpiryLifecycle.js +691 -0
- package/out/src/storage/methods/noSendExpiryLifecycle.js.map +1 -0
- package/out/src/storage/methods/preparedBeef.d.ts +104 -0
- package/out/src/storage/methods/preparedBeef.d.ts.map +1 -0
- package/out/src/storage/methods/preparedBeef.js +524 -0
- package/out/src/storage/methods/preparedBeef.js.map +1 -0
- package/out/src/storage/methods/processAction.d.ts.map +1 -1
- package/out/src/storage/methods/processAction.js +144 -32
- package/out/src/storage/methods/processAction.js.map +1 -1
- package/out/src/storage/methods/purgeData.d.ts.map +1 -1
- package/out/src/storage/methods/purgeData.js +18 -3
- package/out/src/storage/methods/purgeData.js.map +1 -1
- package/out/src/storage/methods/reconcileFailedTransactionInputs.d.ts +32 -0
- package/out/src/storage/methods/reconcileFailedTransactionInputs.d.ts.map +1 -0
- package/out/src/storage/methods/reconcileFailedTransactionInputs.js +142 -0
- package/out/src/storage/methods/reconcileFailedTransactionInputs.js.map +1 -0
- package/out/src/storage/methods/reviewStatus.js +4 -4
- package/out/src/storage/methods/reviewStatus.js.map +1 -1
- package/out/src/storage/methods/reviewStatusIdb.d.ts +1 -1
- package/out/src/storage/methods/reviewStatusIdb.d.ts.map +1 -1
- package/out/src/storage/methods/reviewStatusIdb.js.map +1 -1
- package/out/src/storage/methods/reviewUtxoOutputs.d.ts +38 -0
- package/out/src/storage/methods/reviewUtxoOutputs.d.ts.map +1 -0
- package/out/src/storage/methods/reviewUtxoOutputs.js +197 -0
- package/out/src/storage/methods/reviewUtxoOutputs.js.map +1 -0
- package/out/src/storage/methods/validateSyncProof.d.ts +32 -0
- package/out/src/storage/methods/validateSyncProof.d.ts.map +1 -0
- package/out/src/storage/methods/validateSyncProof.js +139 -0
- package/out/src/storage/methods/validateSyncProof.js.map +1 -0
- package/out/src/storage/portable/index.d.ts.map +1 -1
- package/out/src/storage/portable/index.js +63 -27
- package/out/src/storage/portable/index.js.map +1 -1
- package/out/src/storage/remoting/BinaryJson.d.ts +11 -0
- package/out/src/storage/remoting/BinaryJson.d.ts.map +1 -1
- package/out/src/storage/remoting/BinaryJson.js +94 -8
- package/out/src/storage/remoting/BinaryJson.js.map +1 -1
- package/out/src/storage/remoting/KnexPaymentReplayStore.d.ts.map +1 -1
- package/out/src/storage/remoting/KnexPaymentReplayStore.js +1 -0
- package/out/src/storage/remoting/KnexPaymentReplayStore.js.map +1 -1
- package/out/src/storage/remoting/KnexSessionManager.d.ts +26 -2
- package/out/src/storage/remoting/KnexSessionManager.d.ts.map +1 -1
- package/out/src/storage/remoting/KnexSessionManager.js +221 -40
- package/out/src/storage/remoting/KnexSessionManager.js.map +1 -1
- package/out/src/storage/remoting/KnexSyncTransferStore.d.ts +26 -0
- package/out/src/storage/remoting/KnexSyncTransferStore.d.ts.map +1 -0
- package/out/src/storage/remoting/KnexSyncTransferStore.js +222 -0
- package/out/src/storage/remoting/KnexSyncTransferStore.js.map +1 -0
- package/out/src/storage/remoting/StorageClient.d.ts +6 -1
- package/out/src/storage/remoting/StorageClient.d.ts.map +1 -1
- package/out/src/storage/remoting/StorageClient.js +65 -8
- package/out/src/storage/remoting/StorageClient.js.map +1 -1
- package/out/src/storage/remoting/StorageClientBase.d.ts +57 -10
- package/out/src/storage/remoting/StorageClientBase.d.ts.map +1 -1
- package/out/src/storage/remoting/StorageClientBase.js +372 -9
- package/out/src/storage/remoting/StorageClientBase.js.map +1 -1
- package/out/src/storage/remoting/StorageMobile.d.ts +5 -0
- package/out/src/storage/remoting/StorageMobile.d.ts.map +1 -1
- package/out/src/storage/remoting/StorageMobile.js +13 -11
- package/out/src/storage/remoting/StorageMobile.js.map +1 -1
- package/out/src/storage/remoting/StorageServer.d.ts +27 -5
- package/out/src/storage/remoting/StorageServer.d.ts.map +1 -1
- package/out/src/storage/remoting/StorageServer.js +243 -33
- package/out/src/storage/remoting/StorageServer.js.map +1 -1
- package/out/src/storage/remoting/SyncTransfer.d.ts +29 -0
- package/out/src/storage/remoting/SyncTransfer.d.ts.map +1 -0
- package/out/src/storage/remoting/SyncTransfer.js +153 -0
- package/out/src/storage/remoting/SyncTransfer.js.map +1 -0
- package/out/src/storage/remoting/entityValidationHelpers.d.ts.map +1 -1
- package/out/src/storage/remoting/entityValidationHelpers.js +35 -0
- package/out/src/storage/remoting/entityValidationHelpers.js.map +1 -1
- package/out/src/storage/remoting/syncChunkBinary.d.ts +4 -0
- package/out/src/storage/remoting/syncChunkBinary.d.ts.map +1 -0
- package/out/src/storage/remoting/syncChunkBinary.js +38 -0
- package/out/src/storage/remoting/syncChunkBinary.js.map +1 -0
- package/out/src/storage/remoting/validateRpcSyncProofs.d.ts +5 -0
- package/out/src/storage/remoting/validateRpcSyncProofs.d.ts.map +1 -0
- package/out/src/storage/remoting/validateRpcSyncProofs.js +82 -0
- package/out/src/storage/remoting/validateRpcSyncProofs.js.map +1 -0
- package/out/src/storage/schema/KnexMigrations.d.ts +13 -2
- package/out/src/storage/schema/KnexMigrations.d.ts.map +1 -1
- package/out/src/storage/schema/KnexMigrations.js +334 -43
- package/out/src/storage/schema/KnexMigrations.js.map +1 -1
- package/out/src/storage/schema/StorageIdbSchema.d.ts +3 -0
- package/out/src/storage/schema/StorageIdbSchema.d.ts.map +1 -1
- package/out/src/storage/schema/entities/EntityOutput.d.ts.map +1 -1
- package/out/src/storage/schema/entities/EntityOutput.js +24 -4
- package/out/src/storage/schema/entities/EntityOutput.js.map +1 -1
- package/out/src/storage/schema/entities/EntityOutputBasket.d.ts.map +1 -1
- package/out/src/storage/schema/entities/EntityOutputBasket.js +5 -2
- package/out/src/storage/schema/entities/EntityOutputBasket.js.map +1 -1
- package/out/src/storage/schema/entities/EntityProvenTx.d.ts +4 -1
- package/out/src/storage/schema/entities/EntityProvenTx.d.ts.map +1 -1
- package/out/src/storage/schema/entities/EntityProvenTx.js +125 -41
- package/out/src/storage/schema/entities/EntityProvenTx.js.map +1 -1
- package/out/src/storage/schema/entities/EntityProvenTxReq.js +1 -1
- package/out/src/storage/schema/entities/EntityProvenTxReq.js.map +1 -1
- package/out/src/storage/schema/entities/EntitySyncState.d.ts +4 -2
- package/out/src/storage/schema/entities/EntitySyncState.d.ts.map +1 -1
- package/out/src/storage/schema/entities/EntitySyncState.js +12 -6
- package/out/src/storage/schema/entities/EntitySyncState.js.map +1 -1
- package/out/src/storage/schema/entities/EntityTransaction.d.ts +26 -0
- package/out/src/storage/schema/entities/EntityTransaction.d.ts.map +1 -1
- package/out/src/storage/schema/entities/EntityTransaction.js +221 -21
- package/out/src/storage/schema/entities/EntityTransaction.js.map +1 -1
- package/out/src/storage/schema/tables/TableCertificate.d.ts +1 -1
- package/out/src/storage/schema/tables/TableCertificate.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableCertificateField.d.ts +1 -1
- package/out/src/storage/schema/tables/TableCertificateField.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableCommission.d.ts +1 -1
- package/out/src/storage/schema/tables/TableCommission.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableMonitorEvent.d.ts +1 -1
- package/out/src/storage/schema/tables/TableMonitorEvent.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableOutput.d.ts +1 -1
- package/out/src/storage/schema/tables/TableOutput.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableOutputBasket.d.ts +1 -1
- package/out/src/storage/schema/tables/TableOutputBasket.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableOutputTag.d.ts +1 -1
- package/out/src/storage/schema/tables/TableOutputTag.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableOutputTagMap.d.ts +1 -1
- package/out/src/storage/schema/tables/TableOutputTagMap.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TablePreparedBeef.interfaces.d.ts +23 -0
- package/out/src/storage/schema/tables/TablePreparedBeef.interfaces.d.ts.map +1 -0
- package/out/src/storage/schema/tables/TablePreparedBeef.interfaces.js +3 -0
- package/out/src/storage/schema/tables/TablePreparedBeef.interfaces.js.map +1 -0
- package/out/src/storage/schema/tables/TableProvenTx.d.ts +1 -1
- package/out/src/storage/schema/tables/TableProvenTx.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableProvenTxReq.d.ts +1 -1
- package/out/src/storage/schema/tables/TableProvenTxReq.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableSettings.d.ts +2 -2
- package/out/src/storage/schema/tables/TableSettings.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableSyncState.d.ts +1 -1
- package/out/src/storage/schema/tables/TableSyncState.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableTransaction.d.ts +17 -1
- package/out/src/storage/schema/tables/TableTransaction.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableTransaction.js +14 -1
- package/out/src/storage/schema/tables/TableTransaction.js.map +1 -1
- package/out/src/storage/schema/tables/TableTxLabel.d.ts +1 -1
- package/out/src/storage/schema/tables/TableTxLabel.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableTxLabelMap.d.ts +1 -1
- package/out/src/storage/schema/tables/TableTxLabelMap.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableUser.d.ts +1 -1
- package/out/src/storage/schema/tables/TableUser.d.ts.map +1 -1
- package/out/src/storage/sync/StorageMySQLDojoReader.d.ts.map +1 -1
- package/out/src/storage/sync/StorageMySQLDojoReader.js +8 -7
- package/out/src/storage/sync/StorageMySQLDojoReader.js.map +1 -1
- package/out/src/storage/sync/SyncPageBudget.d.ts +8 -0
- package/out/src/storage/sync/SyncPageBudget.d.ts.map +1 -0
- package/out/src/storage/sync/SyncPageBudget.js +24 -0
- package/out/src/storage/sync/SyncPageBudget.js.map +1 -0
- package/out/src/storage/sync/syncCheckpoint.d.ts +4 -0
- package/out/src/storage/sync/syncCheckpoint.d.ts.map +1 -0
- package/out/src/storage/sync/syncCheckpoint.js +49 -0
- package/out/src/storage/sync/syncCheckpoint.js.map +1 -0
- package/out/src/utility/Argon2idBackend.d.ts +36 -0
- package/out/src/utility/Argon2idBackend.d.ts.map +1 -0
- package/out/src/utility/Argon2idBackend.js +60 -0
- package/out/src/utility/Argon2idBackend.js.map +1 -0
- package/out/src/utility/actionBatchDigest.d.ts.map +1 -1
- package/out/src/utility/actionBatchDigest.js +9 -7
- package/out/src/utility/actionBatchDigest.js.map +1 -1
- package/out/src/utility/actionBatchPack.d.ts.map +1 -1
- package/out/src/utility/actionBatchPack.js +7 -12
- package/out/src/utility/actionBatchPack.js.map +1 -1
- package/out/src/utility/beefForTxids.d.ts +12 -3
- package/out/src/utility/beefForTxids.d.ts.map +1 -1
- package/out/src/utility/beefForTxids.js +69 -21
- package/out/src/utility/beefForTxids.js.map +1 -1
- package/out/src/utility/brc153ReferenceLabels.d.ts +16 -0
- package/out/src/utility/brc153ReferenceLabels.d.ts.map +1 -1
- package/out/src/utility/brc153ReferenceLabels.js +20 -5
- package/out/src/utility/brc153ReferenceLabels.js.map +1 -1
- package/out/src/utility/brc177NoSendExpiry.d.ts +34 -0
- package/out/src/utility/brc177NoSendExpiry.d.ts.map +1 -0
- package/out/src/utility/brc177NoSendExpiry.js +81 -0
- package/out/src/utility/brc177NoSendExpiry.js.map +1 -0
- package/out/src/utility/canonicalizeAtomicBeef.d.ts +12 -0
- package/out/src/utility/canonicalizeAtomicBeef.d.ts.map +1 -0
- package/out/src/utility/canonicalizeAtomicBeef.js +23 -0
- package/out/src/utility/canonicalizeAtomicBeef.js.map +1 -0
- package/out/src/utility/exactActionSpend.d.ts +9 -0
- package/out/src/utility/exactActionSpend.d.ts.map +1 -0
- package/out/src/utility/exactActionSpend.js +26 -0
- package/out/src/utility/exactActionSpend.js.map +1 -0
- package/out/src/utility/hashWasm.d.ts +1 -1
- package/out/src/utility/hashWasm.d.ts.map +1 -1
- package/out/src/utility/hashWasm.js +83 -1
- package/out/src/utility/hashWasm.js.map +1 -1
- package/out/src/utility/identityUtils.d.ts +44 -4
- package/out/src/utility/identityUtils.d.ts.map +1 -1
- package/out/src/utility/identityUtils.js +523 -61
- package/out/src/utility/identityUtils.js.map +1 -1
- package/out/src/utility/index.all.d.ts +2 -0
- package/out/src/utility/index.all.d.ts.map +1 -1
- package/out/src/utility/index.all.js +2 -0
- package/out/src/utility/index.all.js.map +1 -1
- package/out/src/utility/index.client.d.ts +2 -0
- package/out/src/utility/index.client.d.ts.map +1 -1
- package/out/src/utility/index.client.js +2 -0
- package/out/src/utility/index.client.js.map +1 -1
- package/out/src/utility/parseTxScriptOffsets.d.ts.map +1 -1
- package/out/src/utility/parseTxScriptOffsets.js +1 -19
- package/out/src/utility/parseTxScriptOffsets.js.map +1 -1
- package/out/src/utility/tscProofToMerklePath.d.ts.map +1 -1
- package/out/src/utility/tscProofToMerklePath.js +35 -4
- package/out/src/utility/tscProofToMerklePath.js.map +1 -1
- package/out/src/utility/utilityHelpers.d.ts +1 -1
- package/out/src/utility/utilityHelpers.d.ts.map +1 -1
- package/out/src/utility/utilityHelpers.js +10 -7
- package/out/src/utility/utilityHelpers.js.map +1 -1
- package/out/src/utility/utilityHelpers.noBuffer.d.ts.map +1 -1
- package/out/src/utility/utilityHelpers.noBuffer.js +6 -6
- package/out/src/utility/utilityHelpers.noBuffer.js.map +1 -1
- package/out/src/utility/verifyOverlayOutput.d.ts +12 -0
- package/out/src/utility/verifyOverlayOutput.d.ts.map +1 -0
- package/out/src/utility/verifyOverlayOutput.js +22 -0
- package/out/src/utility/verifyOverlayOutput.js.map +1 -0
- package/out/src/utility/walletResultGuards.d.ts +14 -0
- package/out/src/utility/walletResultGuards.d.ts.map +1 -0
- package/out/src/utility/walletResultGuards.js +28 -0
- package/out/src/utility/walletResultGuards.js.map +1 -0
- package/out/src/wab-client/WABClient.d.ts +4 -17
- package/out/src/wab-client/WABClient.d.ts.map +1 -1
- package/out/src/wab-client/WABClient.js +35 -12
- package/out/src/wab-client/WABClient.js.map +1 -1
- package/out/src/wab-client/WABResponseValidation.d.ts +48 -0
- package/out/src/wab-client/WABResponseValidation.d.ts.map +1 -0
- package/out/src/wab-client/WABResponseValidation.js +321 -0
- package/out/src/wab-client/WABResponseValidation.js.map +1 -0
- package/out/src/wab-client/WABTransport.d.ts +17 -23
- package/out/src/wab-client/WABTransport.d.ts.map +1 -1
- package/out/src/wab-client/WABTransport.js +130 -142
- package/out/src/wab-client/WABTransport.js.map +1 -1
- package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.d.ts +8 -0
- package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.d.ts.map +1 -1
- package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.js +3 -2
- package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.js.map +1 -1
- package/package.json +35 -30
- package/docs/open-rpc/index.html +0 -46
package/out/src/Wallet.js
CHANGED
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Wallet = void 0;
|
|
4
4
|
exports.throwDummyReviewActions = throwDummyReviewActions;
|
|
5
|
+
const validationHelpers_1 = require("@bsv/sdk/wallet/validationHelpers");
|
|
5
6
|
const sdk_1 = require("@bsv/sdk");
|
|
7
|
+
const utils_1 = require("@bsv/sdk/primitives/utils");
|
|
6
8
|
const acquireDirectCertificate_1 = require("./signer/methods/acquireDirectCertificate");
|
|
7
9
|
const proveCertificate_1 = require("./signer/methods/proveCertificate");
|
|
8
10
|
const createAction_1 = require("./signer/methods/createAction");
|
|
@@ -11,6 +13,8 @@ const internalizeAction_1 = require("./signer/methods/internalizeAction");
|
|
|
11
13
|
const WalletSettingsManager_1 = require("./WalletSettingsManager");
|
|
12
14
|
const identityUtils_1 = require("./utility/identityUtils");
|
|
13
15
|
const generateChange_1 = require("./storage/methods/generateChange");
|
|
16
|
+
const brc177NoSendExpiry_1 = require("./utility/brc177NoSendExpiry");
|
|
17
|
+
const createNoSendExpiryAction_1 = require("./signer/methods/createNoSendExpiryAction");
|
|
14
18
|
const utilityHelpers_1 = require("./utility/utilityHelpers");
|
|
15
19
|
const ScriptTemplateBRC29_1 = require("./utility/ScriptTemplateBRC29");
|
|
16
20
|
const types_1 = require("./sdk/types");
|
|
@@ -19,6 +23,7 @@ const WalletError_1 = require("./sdk/WalletError");
|
|
|
19
23
|
const utilityHelpers_noBuffer_1 = require("./utility/utilityHelpers.noBuffer");
|
|
20
24
|
const resultBeef_1 = require("./signer/methods/resultBeef");
|
|
21
25
|
const ActionBatchWorkspace_1 = require("./signer/actionBatch/ActionBatchWorkspace");
|
|
26
|
+
const walletResultGuards_1 = require("./utility/walletResultGuards");
|
|
22
27
|
function prepareKnownTxidsForCreateAction(wallet, args) {
|
|
23
28
|
if (!wallet.autoKnownTxids || args.options?.knownTxids != null)
|
|
24
29
|
return;
|
|
@@ -36,11 +41,23 @@ function prepareKnownTxidsForCreateAction(wallet, args) {
|
|
|
36
41
|
return knownTxids;
|
|
37
42
|
});
|
|
38
43
|
}
|
|
44
|
+
/**
|
|
45
|
+
* The requested page of a discovery result. BRC-100 discovery takes limit and
|
|
46
|
+
* offset, and callers reject a page longer than the limit; totalCertificates
|
|
47
|
+
* still counts every trusted match.
|
|
48
|
+
*/
|
|
49
|
+
function discoveryPage(result, offset, limit) {
|
|
50
|
+
return {
|
|
51
|
+
totalCertificates: result.totalCertificates,
|
|
52
|
+
certificates: result.certificates.slice(offset, offset + limit)
|
|
53
|
+
};
|
|
54
|
+
}
|
|
39
55
|
/**
|
|
40
56
|
* Build a {@link DiscoverCertificatesResult} from contact records so {@link Wallet.discoverByIdentityKey}
|
|
41
57
|
* and {@link Wallet.discoverByAttributes} can short-circuit on a local contacts hit. The synthetic
|
|
42
|
-
*
|
|
43
|
-
*
|
|
58
|
+
* result has `trust: Infinity` by default so downstream trust filtering honors the user's local
|
|
59
|
+
* assertion as authoritative. Its empty serial, signature, and revocation outpoint deliberately
|
|
60
|
+
* distinguish it from an independently certified third-party attestation.
|
|
44
61
|
*/
|
|
45
62
|
function synthesizeContactResult(contacts) {
|
|
46
63
|
const certificates = contacts.map(c => ({
|
|
@@ -161,6 +178,10 @@ class Wallet {
|
|
|
161
178
|
}
|
|
162
179
|
}
|
|
163
180
|
async destroy() {
|
|
181
|
+
this._identityEvidenceClosed = true;
|
|
182
|
+
this._identityEvidenceVerifier?.dispose();
|
|
183
|
+
this._overlayEvidenceCache.clear();
|
|
184
|
+
clearTimeout(this._overlayEvidenceExpiryTimer);
|
|
164
185
|
await this.actionBatch.abort();
|
|
165
186
|
await this.storage.destroy();
|
|
166
187
|
if (this.privilegedKeyManager != null)
|
|
@@ -316,8 +337,8 @@ class Wallet {
|
|
|
316
337
|
// List Methods
|
|
317
338
|
/// ///////////////
|
|
318
339
|
async listActions(args, originator) {
|
|
319
|
-
|
|
320
|
-
const { vargs } = this.validateAuthAndArgs(args,
|
|
340
|
+
(0, validationHelpers_1.validateOriginator)(originator);
|
|
341
|
+
const { vargs } = this.validateAuthAndArgs(args, validationHelpers_1.validateListActionsArgs);
|
|
321
342
|
const storageArgs = this.actionBatch.hasWorkspace ? { ...vargs, limit: 10000, offset: 0 } : vargs;
|
|
322
343
|
const r = this.actionBatch.overlayListActions(await this.storage.listActions(storageArgs), vargs);
|
|
323
344
|
// Implement security policy to block customInstructions from output results.
|
|
@@ -334,7 +355,7 @@ class Wallet {
|
|
|
334
355
|
return `storage ${this.getStorageIdentity().storageIdentityKey}`;
|
|
335
356
|
}
|
|
336
357
|
async listOutputs(args, originator) {
|
|
337
|
-
|
|
358
|
+
(0, validationHelpers_1.validateOriginator)(originator);
|
|
338
359
|
const { vargs } = this.validateAuthAndArgs(args, validateListOutputsArgs);
|
|
339
360
|
if (this.autoKnownTxids && !vargs.knownTxids) {
|
|
340
361
|
vargs.knownTxids = this.getKnownTxids();
|
|
@@ -350,8 +371,8 @@ class Wallet {
|
|
|
350
371
|
return r;
|
|
351
372
|
}
|
|
352
373
|
async listCertificates(args, originator) {
|
|
353
|
-
|
|
354
|
-
const { vargs } = this.validateAuthAndArgs(args,
|
|
374
|
+
(0, validationHelpers_1.validateOriginator)(originator);
|
|
375
|
+
const { vargs } = this.validateAuthAndArgs(args, validationHelpers_1.validateListCertificatesArgs);
|
|
355
376
|
const r = await this.storage.listCertificates(vargs);
|
|
356
377
|
return r;
|
|
357
378
|
}
|
|
@@ -359,7 +380,7 @@ class Wallet {
|
|
|
359
380
|
// Certificates
|
|
360
381
|
/// ///////////////
|
|
361
382
|
async acquireDirectCertificateProtocol(args) {
|
|
362
|
-
const { auth, vargs } = this.validateAuthAndArgs(args,
|
|
383
|
+
const { auth, vargs } = this.validateAuthAndArgs(args, validationHelpers_1.validateAcquireDirectCertificateArgs);
|
|
363
384
|
vargs.subject = (await this.getPublicKey({
|
|
364
385
|
identityKey: true,
|
|
365
386
|
privileged: args.privileged,
|
|
@@ -367,7 +388,8 @@ class Wallet {
|
|
|
367
388
|
})).publicKey;
|
|
368
389
|
try {
|
|
369
390
|
const certificate = new sdk_1.MasterCertificate(vargs.type, vargs.serialNumber, vargs.subject, vargs.certifier, vargs.revocationOutpoint, vargs.fields, vargs.keyringForSubject, vargs.signature);
|
|
370
|
-
await certificate.verify()
|
|
391
|
+
if (!(await certificate.verify()))
|
|
392
|
+
throw new Error('Certificate verification failed');
|
|
371
393
|
await sdk_1.MasterCertificate.decryptFields(this, vargs.keyringForSubject, vargs.fields, vargs.certifier, vargs.privileged, vargs.privilegedReason);
|
|
372
394
|
}
|
|
373
395
|
catch (error_) {
|
|
@@ -405,11 +427,12 @@ class Wallet {
|
|
|
405
427
|
this.validateIssuedCertificateFields(certificate, expectedFields);
|
|
406
428
|
}
|
|
407
429
|
async acquireIssuedCertificateProtocol(args) {
|
|
408
|
-
const { auth, vargs } = this.validateAuthAndArgs(args,
|
|
430
|
+
const { auth, vargs } = this.validateAuthAndArgs(args, validationHelpers_1.validateAcquireIssuanceCertificateArgs);
|
|
409
431
|
const clientNonce = await (0, sdk_1.createNonce)(this, vargs.certifier);
|
|
410
|
-
const
|
|
432
|
+
const endpoint = new URL('signCertificate', `${vargs.certifierUrl}/`);
|
|
433
|
+
const authClient = new sdk_1.AuthFetch(this, undefined, undefined, undefined, {}, (0, sdk_1.createPublicHTTPSFetch)(endpoint.origin));
|
|
411
434
|
const { certificateFields, masterKeyring } = await sdk_1.MasterCertificate.createCertificateFields(this, vargs.certifier, vargs.fields);
|
|
412
|
-
const response = await authClient.fetch(
|
|
435
|
+
const response = await authClient.fetch(endpoint.toString(), {
|
|
413
436
|
method: 'POST',
|
|
414
437
|
headers: { 'Content-Type': 'application/json' },
|
|
415
438
|
body: JSON.stringify({
|
|
@@ -431,16 +454,17 @@ class Wallet {
|
|
|
431
454
|
const signedCertificate = new sdk_1.Certificate(certificate.type, certificate.serialNumber, certificate.subject, certificate.certifier, certificate.revocationOutpoint, certificate.fields, certificate.signature);
|
|
432
455
|
await (0, sdk_1.verifyNonce)(serverNonce, this, vargs.certifier);
|
|
433
456
|
const { valid } = await this.verifyHmac({
|
|
434
|
-
hmac:
|
|
435
|
-
data:
|
|
457
|
+
hmac: (0, utils_1.toArray)(signedCertificate.serialNumber, 'base64'),
|
|
458
|
+
data: (0, utils_1.toArray)(clientNonce + serverNonce, 'base64'),
|
|
436
459
|
protocolID: [2, 'certificate issuance'],
|
|
437
460
|
keyID: serverNonce + clientNonce,
|
|
438
461
|
counterparty: vargs.certifier
|
|
439
462
|
});
|
|
440
|
-
if (
|
|
463
|
+
if (valid !== true)
|
|
441
464
|
throw new Error('Invalid serialNumber');
|
|
442
465
|
this.validateIssuedCertificate(signedCertificate, vargs, certificateFields);
|
|
443
|
-
await signedCertificate.verify()
|
|
466
|
+
if (!(await signedCertificate.verify()))
|
|
467
|
+
throw new Error('Certificate verification failed');
|
|
444
468
|
await sdk_1.MasterCertificate.decryptFields(this, masterKeyring, certificate.fields, vargs.certifier);
|
|
445
469
|
return await (0, acquireDirectCertificate_1.acquireDirectCertificate)(this, auth, {
|
|
446
470
|
...certificate,
|
|
@@ -450,7 +474,7 @@ class Wallet {
|
|
|
450
474
|
});
|
|
451
475
|
}
|
|
452
476
|
async acquireCertificate(args, originator) {
|
|
453
|
-
|
|
477
|
+
(0, validationHelpers_1.validateOriginator)(originator);
|
|
454
478
|
if (args.acquisitionProtocol === 'direct') {
|
|
455
479
|
return await this.acquireDirectCertificateProtocol(args);
|
|
456
480
|
}
|
|
@@ -460,32 +484,117 @@ class Wallet {
|
|
|
460
484
|
throw new WERR_errors_1.WERR_INVALID_PARAMETER('acquisitionProtocol', `valid.${args.acquisitionProtocol} is unrecognized.`);
|
|
461
485
|
}
|
|
462
486
|
async relinquishCertificate(args, originator) {
|
|
463
|
-
|
|
464
|
-
this.validateAuthAndArgs(args,
|
|
465
|
-
await this.storage.relinquishCertificate(args);
|
|
487
|
+
(0, validationHelpers_1.validateOriginator)(originator);
|
|
488
|
+
this.validateAuthAndArgs(args, validationHelpers_1.validateRelinquishCertificateArgs);
|
|
489
|
+
const updated = await this.storage.relinquishCertificate(args);
|
|
490
|
+
(0, walletResultGuards_1.assertStorageMutationSucceeded)(updated, 'certificate relinquishment');
|
|
466
491
|
return { relinquished: true };
|
|
467
492
|
}
|
|
468
493
|
async proveCertificate(args, originator) {
|
|
469
|
-
|
|
470
|
-
const { auth, vargs } = this.validateAuthAndArgs(args,
|
|
494
|
+
(0, validationHelpers_1.validateOriginator)(originator);
|
|
495
|
+
const { auth, vargs } = this.validateAuthAndArgs(args, validationHelpers_1.validateProveCertificateArgs);
|
|
471
496
|
const r = await (0, proveCertificate_1.proveCertificate)(this, auth, vargs);
|
|
472
497
|
return r;
|
|
473
498
|
}
|
|
474
499
|
/** 2-minute cache of trust settings for identity resolution paths */
|
|
475
500
|
_trustSettingsCache;
|
|
476
|
-
/**
|
|
477
|
-
|
|
501
|
+
/** Bounded two-minute untrusted receipts. Every use rechecks canonical evidence. */
|
|
502
|
+
_overlayEvidenceCache = new Map();
|
|
503
|
+
_overlayEvidenceExpiryTimer;
|
|
504
|
+
_identityEvidenceVerifier;
|
|
505
|
+
_identityEvidenceClosed = false;
|
|
506
|
+
pruneOverlayEvidence() {
|
|
507
|
+
for (const [key, value] of this._overlayEvidenceCache) {
|
|
508
|
+
if (value.expiresAt <= Date.now())
|
|
509
|
+
this._overlayEvidenceCache.delete(key);
|
|
510
|
+
}
|
|
511
|
+
}
|
|
512
|
+
scheduleOverlayEvidenceExpiry() {
|
|
513
|
+
clearTimeout(this._overlayEvidenceExpiryTimer);
|
|
514
|
+
const expiresAt = Math.min(...[...this._overlayEvidenceCache.values()].map(value => value.expiresAt));
|
|
515
|
+
if (!Number.isFinite(expiresAt))
|
|
516
|
+
return;
|
|
517
|
+
this._overlayEvidenceExpiryTimer = setTimeout(() => {
|
|
518
|
+
this.pruneOverlayEvidence();
|
|
519
|
+
this.scheduleOverlayEvidenceExpiry();
|
|
520
|
+
}, Math.max(1, expiresAt - Date.now()));
|
|
521
|
+
this._overlayEvidenceExpiryTimer.unref?.();
|
|
522
|
+
}
|
|
523
|
+
async requireOverlayChainTracker(forceRefresh) {
|
|
524
|
+
if (this.services == null) {
|
|
525
|
+
if (forceRefresh) {
|
|
526
|
+
throw new WERR_errors_1.WERR_INVALID_PARAMETER('services', 'valid in constructor arguments to be retreived here.');
|
|
527
|
+
}
|
|
528
|
+
return undefined;
|
|
529
|
+
}
|
|
530
|
+
return await this.services.getChainTracker();
|
|
531
|
+
}
|
|
532
|
+
async discoverOverlayCertificates(query, cacheKey, forceRefresh, now) {
|
|
533
|
+
const chainTracker = await this.requireOverlayChainTracker(forceRefresh);
|
|
534
|
+
if (chainTracker == null)
|
|
535
|
+
return [];
|
|
536
|
+
if (this._identityEvidenceClosed)
|
|
537
|
+
return [];
|
|
538
|
+
const chainNamespace = `wallet:${this.chain}`;
|
|
539
|
+
if (this._identityEvidenceVerifier?.chainTracker !== chainTracker ||
|
|
540
|
+
this._identityEvidenceVerifier.chainNamespace !== chainNamespace) {
|
|
541
|
+
this._identityEvidenceVerifier?.dispose();
|
|
542
|
+
this._identityEvidenceVerifier = new identityUtils_1.IdentityEvidenceVerifier(chainTracker, chainNamespace);
|
|
543
|
+
}
|
|
544
|
+
const verifier = this._identityEvidenceVerifier;
|
|
545
|
+
this.pruneOverlayEvidence();
|
|
546
|
+
let cached = forceRefresh ? undefined : this._overlayEvidenceCache.get(cacheKey);
|
|
547
|
+
if (cached == null || cached.expiresAt <= now) {
|
|
548
|
+
const value = await (0, identityUtils_1.queryOverlayEvidence)(query, this.lookupResolver);
|
|
549
|
+
if (this._identityEvidenceClosed)
|
|
550
|
+
return [];
|
|
551
|
+
const bytes = value.type === 'output-list'
|
|
552
|
+
? value.outputs.reduce((total, output) => total + output.beef.length + (output.context?.length ?? 0), 0)
|
|
553
|
+
: 0;
|
|
554
|
+
cached = { value, bytes, expiresAt: now + 2 * 60 * 1000 };
|
|
555
|
+
this._overlayEvidenceCache.delete(cacheKey);
|
|
556
|
+
let retained = [...this._overlayEvidenceCache.values()].reduce((total, entry) => total + entry.bytes, 0);
|
|
557
|
+
while (this._overlayEvidenceCache.size > 0 &&
|
|
558
|
+
(this._overlayEvidenceCache.size >= 32 || retained + bytes > 16 * 1024 * 1024)) {
|
|
559
|
+
const oldest = this._overlayEvidenceCache.keys().next().value;
|
|
560
|
+
retained -= this._overlayEvidenceCache.get(oldest).bytes;
|
|
561
|
+
this._overlayEvidenceCache.delete(oldest);
|
|
562
|
+
}
|
|
563
|
+
this._overlayEvidenceCache.set(cacheKey, cached);
|
|
564
|
+
this.scheduleOverlayEvidenceExpiry();
|
|
565
|
+
}
|
|
566
|
+
if (cached.value.type !== 'output-list') {
|
|
567
|
+
this._overlayEvidenceCache.delete(cacheKey);
|
|
568
|
+
return [];
|
|
569
|
+
}
|
|
570
|
+
let certificates;
|
|
571
|
+
try {
|
|
572
|
+
certificates = await (0, identityUtils_1.parseResults)(cached.value, chainTracker, verifier);
|
|
573
|
+
}
|
|
574
|
+
catch (error) {
|
|
575
|
+
this._overlayEvidenceCache.delete(cacheKey);
|
|
576
|
+
throw error;
|
|
577
|
+
}
|
|
578
|
+
// Failed evidence must allow another fetch, including after temporary chain unavailability.
|
|
579
|
+
if (certificates.length !== cached.value.outputs.length)
|
|
580
|
+
this._overlayEvidenceCache.delete(cacheKey);
|
|
581
|
+
return certificates;
|
|
582
|
+
}
|
|
583
|
+
/**
|
|
584
|
+
* Resolves an identity from a caller-installed local contact source first, then the certificate
|
|
585
|
+
* overlay. A local hit expresses the user's own authoritative trust decision and carries empty
|
|
586
|
+
* third-party certificate proof fields; use `forceRefresh` to bypass it and query the overlay.
|
|
587
|
+
*/
|
|
478
588
|
async discoverByIdentityKey(args, originator) {
|
|
479
|
-
|
|
480
|
-
this.validateAuthAndArgs(args,
|
|
481
|
-
const TTL_MS = 2 * 60 * 1000;
|
|
589
|
+
(0, validationHelpers_1.validateOriginator)(originator);
|
|
590
|
+
const { vargs } = this.validateAuthAndArgs(args, validationHelpers_1.validateDiscoverByIdentityKeyArgs);
|
|
482
591
|
const now = Date.now();
|
|
483
592
|
const forceRefresh = args.forceRefresh === true;
|
|
484
|
-
//
|
|
593
|
+
// Local contacts are explicit user trust anchors, not third-party certifier attestations.
|
|
485
594
|
if (!forceRefresh && this.contactSource != null) {
|
|
486
595
|
try {
|
|
487
|
-
const contact = await this.contactSource.findByIdentityKey(
|
|
488
|
-
if (contact != null) {
|
|
596
|
+
const contact = await this.contactSource.findByIdentityKey(vargs.identityKey);
|
|
597
|
+
if (contact != null && contact.identityKey === vargs.identityKey && vargs.offset === 0) {
|
|
489
598
|
return synthesizeContactResult([contact]);
|
|
490
599
|
}
|
|
491
600
|
}
|
|
@@ -493,84 +602,64 @@ class Wallet {
|
|
|
493
602
|
// Contact source failures must never block the network path.
|
|
494
603
|
}
|
|
495
604
|
}
|
|
496
|
-
//
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
: undefined;
|
|
500
|
-
if (trustSettings == null) {
|
|
501
|
-
const settings = await this.settingsManager.get();
|
|
502
|
-
trustSettings = settings.trustSettings;
|
|
503
|
-
this._trustSettingsCache = { trustSettings, expiresAt: now + TTL_MS };
|
|
504
|
-
}
|
|
605
|
+
// Authorization policy is read fresh on every call. A removed certifier or
|
|
606
|
+
// raised threshold must take effect immediately rather than after a cache TTL.
|
|
607
|
+
const trustSettings = (await this.settingsManager.get()).trustSettings;
|
|
505
608
|
const certifiers = trustSettings.trustedCertifiers.map(c => c.identityKey).sort((a, b) => a.localeCompare(b));
|
|
506
|
-
// ---
|
|
609
|
+
// --- Untrusted overlay response cache; verify again before use. ---
|
|
507
610
|
const cacheKey = JSON.stringify({
|
|
508
611
|
fn: 'discoverByIdentityKey',
|
|
509
|
-
identityKey:
|
|
510
|
-
certifiers
|
|
612
|
+
identityKey: vargs.identityKey,
|
|
613
|
+
certifiers,
|
|
614
|
+
limit: vargs.limit,
|
|
615
|
+
offset: vargs.offset
|
|
511
616
|
});
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
const value = await (0, identityUtils_1.queryOverlay)({ identityKey: args.identityKey, certifiers }, this.lookupResolver);
|
|
515
|
-
cached = { value, expiresAt: now + TTL_MS };
|
|
516
|
-
this._overlayCache.set(cacheKey, cached);
|
|
517
|
-
}
|
|
518
|
-
if (!cached.value) {
|
|
519
|
-
return { totalCertificates: 0, certificates: [] };
|
|
520
|
-
}
|
|
521
|
-
return (0, identityUtils_1.transformVerifiableCertificatesWithTrust)(trustSettings, cached.value);
|
|
617
|
+
const certificates = await this.discoverOverlayCertificates({ identityKey: args.identityKey, certifiers }, cacheKey, forceRefresh, now);
|
|
618
|
+
return discoveryPage((0, identityUtils_1.transformVerifiableCertificatesWithTrust)(trustSettings, (0, identityUtils_1.filterCertificatesByIdentityKey)(certificates, vargs.identityKey)), vargs.offset, vargs.limit);
|
|
522
619
|
}
|
|
620
|
+
/**
|
|
621
|
+
* Resolves matching identities from a caller-installed local contact source first, then the
|
|
622
|
+
* certificate overlay. Local hits are authoritative personal assertions with empty third-party
|
|
623
|
+
* certificate proof fields; use `forceRefresh` to bypass them and query the overlay.
|
|
624
|
+
*/
|
|
523
625
|
async discoverByAttributes(args, originator) {
|
|
524
|
-
|
|
525
|
-
this.validateAuthAndArgs(args,
|
|
526
|
-
const TTL_MS = 2 * 60 * 1000;
|
|
626
|
+
(0, validationHelpers_1.validateOriginator)(originator);
|
|
627
|
+
const { vargs } = this.validateAuthAndArgs(args, validationHelpers_1.validateDiscoverByAttributesArgs);
|
|
527
628
|
const now = Date.now();
|
|
528
629
|
const forceRefresh = args.forceRefresh === true;
|
|
529
|
-
//
|
|
530
|
-
if (!forceRefresh && this.contactSource?.findByAttributes != null &&
|
|
630
|
+
// Local contacts are explicit user trust anchors, not third-party certifier attestations.
|
|
631
|
+
if (!forceRefresh && this.contactSource?.findByAttributes != null && vargs.attributes != null) {
|
|
531
632
|
try {
|
|
532
|
-
const matches = await this.contactSource.findByAttributes(
|
|
633
|
+
const matches = await this.contactSource.findByAttributes(vargs.attributes);
|
|
533
634
|
if (Array.isArray(matches) && matches.length > 0) {
|
|
534
|
-
return synthesizeContactResult(matches);
|
|
635
|
+
return synthesizeContactResult(matches.slice(vargs.offset, vargs.offset + vargs.limit));
|
|
535
636
|
}
|
|
536
637
|
}
|
|
537
638
|
catch {
|
|
538
639
|
// Fall through to network path on contact-source failure.
|
|
539
640
|
}
|
|
540
641
|
}
|
|
541
|
-
//
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
: undefined;
|
|
545
|
-
if (trustSettings == null) {
|
|
546
|
-
const settings = await this.settingsManager.get();
|
|
547
|
-
trustSettings = settings.trustSettings;
|
|
548
|
-
this._trustSettingsCache = { trustSettings, expiresAt: now + TTL_MS };
|
|
549
|
-
}
|
|
642
|
+
// Authorization policy is read fresh on every call. A removed certifier or
|
|
643
|
+
// raised threshold must take effect immediately rather than after a cache TTL.
|
|
644
|
+
const trustSettings = (await this.settingsManager.get()).trustSettings;
|
|
550
645
|
const certifiers = trustSettings.trustedCertifiers.map(c => c.identityKey).sort((a, b) => a.localeCompare(b));
|
|
551
646
|
// Normalize attributes for a stable cache key.
|
|
552
647
|
// If attributes is an object, sort its top-level keys; if it's an array, sort a shallow copy.
|
|
553
|
-
let attributesKey =
|
|
554
|
-
if (
|
|
555
|
-
const keys = Object.keys(
|
|
556
|
-
attributesKey = JSON.stringify(
|
|
648
|
+
let attributesKey = vargs.attributes;
|
|
649
|
+
if (vargs.attributes != null && typeof vargs.attributes === 'object') {
|
|
650
|
+
const keys = Object.keys(vargs.attributes).sort((a, b) => a.localeCompare(b));
|
|
651
|
+
attributesKey = JSON.stringify(vargs.attributes, keys);
|
|
557
652
|
}
|
|
558
|
-
// ---
|
|
653
|
+
// --- Untrusted overlay response cache; verify again before use. ---
|
|
559
654
|
const cacheKey = JSON.stringify({
|
|
560
655
|
fn: 'discoverByAttributes',
|
|
561
656
|
attributes: attributesKey,
|
|
562
|
-
certifiers
|
|
657
|
+
certifiers,
|
|
658
|
+
limit: vargs.limit,
|
|
659
|
+
offset: vargs.offset
|
|
563
660
|
});
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
const value = await (0, identityUtils_1.queryOverlay)({ attributes: args.attributes, certifiers }, this.lookupResolver);
|
|
567
|
-
cached = { value, expiresAt: now + TTL_MS };
|
|
568
|
-
this._overlayCache.set(cacheKey, cached);
|
|
569
|
-
}
|
|
570
|
-
if (!cached.value) {
|
|
571
|
-
return { totalCertificates: 0, certificates: [] };
|
|
572
|
-
}
|
|
573
|
-
return (0, identityUtils_1.transformVerifiableCertificatesWithTrust)(trustSettings, cached.value);
|
|
661
|
+
const certificates = await this.discoverOverlayCertificates({ attributes: args.attributes, certifiers }, cacheKey, forceRefresh, now);
|
|
662
|
+
return discoveryPage((0, identityUtils_1.transformVerifiableCertificatesWithTrust)(trustSettings, (0, identityUtils_1.filterCertificatesByAttributes)(certificates, vargs.attributes)), vargs.offset, vargs.limit);
|
|
574
663
|
}
|
|
575
664
|
verifyReturnedTxidOnly(beef, knownTxids) {
|
|
576
665
|
if (this.returnTxidOnly)
|
|
@@ -595,7 +684,7 @@ class Wallet {
|
|
|
595
684
|
verifyReturnedTxidOnlyAtomicBEEF(beef, knownTxids, parsedBeef) {
|
|
596
685
|
if (this.returnTxidOnly)
|
|
597
686
|
return beef;
|
|
598
|
-
const b = parsedBeef ?? sdk_1.Beef.
|
|
687
|
+
const b = parsedBeef ?? sdk_1.Beef.fromBinaryStrict(beef);
|
|
599
688
|
if (!b.atomicTxid)
|
|
600
689
|
throw new WERR_errors_1.WERR_INTERNAL();
|
|
601
690
|
const hasUnknownTxidOnly = b.txs.some(btx => btx.isTxidOnly && !knownTxids?.includes(btx.txid));
|
|
@@ -606,7 +695,7 @@ class Wallet {
|
|
|
606
695
|
verifyReturnedTxidOnlyBEEF(beef) {
|
|
607
696
|
if (this.returnTxidOnly)
|
|
608
697
|
return beef;
|
|
609
|
-
const b = sdk_1.Beef.
|
|
698
|
+
const b = sdk_1.Beef.fromBinaryStrict(beef);
|
|
610
699
|
return this.verifyReturnedTxidOnly(b).toBinary();
|
|
611
700
|
}
|
|
612
701
|
logMakeLogger(method, args) {
|
|
@@ -635,17 +724,22 @@ class Wallet {
|
|
|
635
724
|
async createAction(args, originator) {
|
|
636
725
|
const logger = this.logMakeLogger('createAction', args);
|
|
637
726
|
try {
|
|
638
|
-
|
|
727
|
+
(0, validationHelpers_1.validateOriginator)(originator);
|
|
639
728
|
args.options ??= {};
|
|
640
729
|
args.options.trustSelf ||= this.trustSelf;
|
|
641
730
|
prepareKnownTxidsForCreateAction(this, args);
|
|
642
|
-
const { auth, vargs } = this.validateAuthAndArgs(args,
|
|
731
|
+
const { auth, vargs } = this.validateAuthAndArgs(args, validationHelpers_1.validateCreateActionArgs, logger);
|
|
643
732
|
logger?.log('validated args');
|
|
644
733
|
vargs.includeAllSourceTransactions = this.includeAllSourceTransactions;
|
|
645
734
|
if (this.randomVals != null && this.randomVals.length > 1) {
|
|
646
735
|
vargs.randomVals = [...this.randomVals];
|
|
647
736
|
}
|
|
648
|
-
const
|
|
737
|
+
const brc177Requested = (0, brc177NoSendExpiry_1.hasBrc177NoSendExpiryLabel)(vargs.labels);
|
|
738
|
+
if (brc177Requested)
|
|
739
|
+
(0, brc177NoSendExpiry_1.parseBrc177NoSendExpiryLabels)(vargs.labels);
|
|
740
|
+
const r = brc177Requested
|
|
741
|
+
? await (0, createNoSendExpiryAction_1.createNoSendExpiryAction)(this, auth, vargs)
|
|
742
|
+
: await (0, createAction_1.createAction)(this, auth, vargs);
|
|
649
743
|
logger?.log('action created');
|
|
650
744
|
const resultBeef = (0, resultBeef_1.getResultBeef)(r);
|
|
651
745
|
if (r.tx != null) {
|
|
@@ -686,8 +780,8 @@ class Wallet {
|
|
|
686
780
|
}
|
|
687
781
|
}
|
|
688
782
|
async signAction(args, originator) {
|
|
689
|
-
|
|
690
|
-
const { auth, vargs } = this.validateAuthAndArgs(args,
|
|
783
|
+
(0, validationHelpers_1.validateOriginator)(originator);
|
|
784
|
+
const { auth, vargs } = this.validateAuthAndArgs(args, validationHelpers_1.validateSignActionArgs);
|
|
691
785
|
const prior = this.pendingSignActions[args.reference];
|
|
692
786
|
if (!prior) {
|
|
693
787
|
throw new WERR_errors_1.WERR_NOT_IMPLEMENTED('recovery of out-of-session signAction reference data is not yet implemented.');
|
|
@@ -702,56 +796,61 @@ class Wallet {
|
|
|
702
796
|
return r;
|
|
703
797
|
}
|
|
704
798
|
async internalizeAction(args, originator) {
|
|
705
|
-
|
|
706
|
-
const { auth, vargs } = this.validateAuthAndArgs(args,
|
|
799
|
+
(0, validationHelpers_1.validateOriginator)(originator);
|
|
800
|
+
const { auth, vargs } = this.validateAuthAndArgs(args, validationHelpers_1.validateInternalizeActionArgs);
|
|
707
801
|
if (vargs.labels.includes(types_1.specOpThrowReviewActions))
|
|
708
802
|
throwDummyReviewActions();
|
|
803
|
+
if ((0, brc177NoSendExpiry_1.hasBrc177NoSendExpiryLabel)(vargs.labels)) {
|
|
804
|
+
throw new WERR_errors_1.WERR_INVALID_PARAMETER('labels', 'BRC-177 noSend expiry labels only on outgoing createAction requests');
|
|
805
|
+
}
|
|
709
806
|
const r = await (0, internalizeAction_1.internalizeAction)(this, auth, args);
|
|
710
807
|
throwIfUnsuccessfulInternalizeAction(r);
|
|
711
808
|
return r;
|
|
712
809
|
}
|
|
713
810
|
async abortAction(args, originator) {
|
|
714
|
-
|
|
715
|
-
this.validateAuthAndArgs(args,
|
|
811
|
+
(0, validationHelpers_1.validateOriginator)(originator);
|
|
812
|
+
this.validateAuthAndArgs(args, validationHelpers_1.validateAbortActionArgs);
|
|
716
813
|
if (this.actionBatch.ownsReference(args.reference)) {
|
|
717
814
|
return { aborted: await this.actionBatch.abortAction(args.reference) };
|
|
718
815
|
}
|
|
719
816
|
const r = await this.storage.abortAction(args);
|
|
817
|
+
(0, walletResultGuards_1.assertAbortResult)(r);
|
|
720
818
|
return r;
|
|
721
819
|
}
|
|
722
820
|
async relinquishOutput(args, originator) {
|
|
723
|
-
|
|
724
|
-
this.validateAuthAndArgs(args,
|
|
725
|
-
await this.storage.relinquishOutput(args);
|
|
821
|
+
(0, validationHelpers_1.validateOriginator)(originator);
|
|
822
|
+
this.validateAuthAndArgs(args, validationHelpers_1.validateRelinquishOutputArgs);
|
|
823
|
+
const updated = await this.storage.relinquishOutput(args);
|
|
824
|
+
(0, walletResultGuards_1.assertStorageMutationSucceeded)(updated, 'output relinquishment');
|
|
726
825
|
return { relinquished: true };
|
|
727
826
|
}
|
|
728
827
|
async isAuthenticated(args, originator) {
|
|
729
|
-
|
|
828
|
+
(0, validationHelpers_1.validateOriginator)(originator);
|
|
730
829
|
const r = {
|
|
731
830
|
authenticated: true
|
|
732
831
|
};
|
|
733
832
|
return r;
|
|
734
833
|
}
|
|
735
834
|
async waitForAuthentication(args, originator) {
|
|
736
|
-
|
|
835
|
+
(0, validationHelpers_1.validateOriginator)(originator);
|
|
737
836
|
return { authenticated: true };
|
|
738
837
|
}
|
|
739
838
|
async getHeight(args, originator) {
|
|
740
|
-
|
|
839
|
+
(0, validationHelpers_1.validateOriginator)(originator);
|
|
741
840
|
const height = await this.getServices().getHeight();
|
|
742
841
|
return { height };
|
|
743
842
|
}
|
|
744
843
|
async getHeaderForHeight(args, originator) {
|
|
745
|
-
|
|
844
|
+
(0, validationHelpers_1.validateOriginator)(originator);
|
|
746
845
|
const serializedHeader = await this.getServices().getHeaderForHeight(args.height);
|
|
747
|
-
return { header:
|
|
846
|
+
return { header: (0, utils_1.toHex)(serializedHeader) };
|
|
748
847
|
}
|
|
749
848
|
async getNetwork(args, originator) {
|
|
750
|
-
|
|
849
|
+
(0, validationHelpers_1.validateOriginator)(originator);
|
|
751
850
|
return { network: (0, utilityHelpers_1.toWalletNetwork)(this.chain) };
|
|
752
851
|
}
|
|
753
852
|
async getVersion(args, originator) {
|
|
754
|
-
|
|
853
|
+
(0, validationHelpers_1.validateOriginator)(originator);
|
|
755
854
|
return { version: 'wallet-brc100-1.0.0' };
|
|
756
855
|
}
|
|
757
856
|
/**
|
|
@@ -829,13 +928,15 @@ class Wallet {
|
|
|
829
928
|
limit: 1000,
|
|
830
929
|
offset
|
|
831
930
|
});
|
|
832
|
-
if (change.
|
|
931
|
+
if (change.outputs.length === 0)
|
|
833
932
|
break;
|
|
834
933
|
for (const o of change.outputs) {
|
|
835
934
|
r.total += o.satoshis;
|
|
836
935
|
r.utxos.push({ satoshis: o.satoshis, outpoint: o.outpoint });
|
|
837
936
|
}
|
|
838
937
|
offset += change.outputs.length;
|
|
938
|
+
if (offset >= change.totalOutputs)
|
|
939
|
+
break;
|
|
839
940
|
}
|
|
840
941
|
return r;
|
|
841
942
|
}
|
|
@@ -855,14 +956,15 @@ class Wallet {
|
|
|
855
956
|
}
|
|
856
957
|
/**
|
|
857
958
|
* Uses `listOutputs` special operation to review the spendability via `Services` of
|
|
858
|
-
* outputs currently considered spendable. Returns
|
|
959
|
+
* outputs currently considered spendable. Returns only outputs conclusively
|
|
960
|
+
* confirmed spent. Rejects the review if any provider result is inconclusive.
|
|
859
961
|
*
|
|
860
962
|
* Ignores the `limit` and `offset` properties.
|
|
861
963
|
*
|
|
862
964
|
* @param all Defaults to false. If false, only change outputs ('default' basket) are reviewed. If true, all spendable outputs are reviewed.
|
|
863
|
-
* @param release Defaults to false. If true, sets
|
|
965
|
+
* @param release Defaults to false. If true, atomically sets conclusively spent outputs to un-spendable (spendable: false). No outputs change if any candidate is inconclusive.
|
|
864
966
|
* @param optionalArgs Optional. Additional tags will constrain the outputs processed.
|
|
865
|
-
* @returns outputs
|
|
967
|
+
* @returns outputs previously considered spendable but conclusively confirmed spent.
|
|
866
968
|
*/
|
|
867
969
|
async reviewSpendableOutputs(all = false, release = false, optionalArgs) {
|
|
868
970
|
const args = {
|
|
@@ -898,7 +1000,7 @@ class Wallet {
|
|
|
898
1000
|
* @returns {ListActionsResult} start `listActions` result restricted to 'nosend' (or 'failed' if aborted) actions.
|
|
899
1001
|
*/
|
|
900
1002
|
async listNoSendActions(args, abort = false) {
|
|
901
|
-
const { vargs } = this.validateAuthAndArgs(args,
|
|
1003
|
+
const { vargs } = this.validateAuthAndArgs(args, validationHelpers_1.validateListActionsArgs);
|
|
902
1004
|
vargs.labels.push(types_1.specOpNoSendActions);
|
|
903
1005
|
if (abort) {
|
|
904
1006
|
await this.actionBatch.abort();
|
|
@@ -913,7 +1015,7 @@ class Wallet {
|
|
|
913
1015
|
* @returns {ListActionsResult} start `listActions` result restricted to 'failed' status actions.
|
|
914
1016
|
*/
|
|
915
1017
|
async listFailedActions(args, unfail = false) {
|
|
916
|
-
const { vargs } = this.validateAuthAndArgs(args,
|
|
1018
|
+
const { vargs } = this.validateAuthAndArgs(args, validationHelpers_1.validateListActionsArgs);
|
|
917
1019
|
vargs.labels.push(types_1.specOpFailedActions);
|
|
918
1020
|
if (unfail)
|
|
919
1021
|
vargs.labels.push('unfail');
|
|
@@ -937,6 +1039,7 @@ function throwIfAnyUnsuccessfulSignActions(r) {
|
|
|
937
1039
|
throw new WERR_errors_1.WERR_REVIEW_ACTIONS(ndrs, swrs, r.txid, r.tx);
|
|
938
1040
|
}
|
|
939
1041
|
function throwIfUnsuccessfulInternalizeAction(r) {
|
|
1042
|
+
(0, walletResultGuards_1.assertInternalizeAccepted)(r);
|
|
940
1043
|
const ndrs = r.notDelayedResults;
|
|
941
1044
|
const swrs = r.sendWithResults;
|
|
942
1045
|
if (ndrs == null || swrs == null || swrs.every(r => r.status === 'unproven'))
|
|
@@ -948,10 +1051,9 @@ function throwIfUnsuccessfulInternalizeAction(r) {
|
|
|
948
1051
|
*/
|
|
949
1052
|
function throwDummyReviewActions() {
|
|
950
1053
|
const b58Beef = 'gno9MC7VXii1KoCkc2nsVyYJpqzN3dhBzYATETJcys62emMKfpBof4R7GozwYEaSapUtnNvqQ57aaYYjm3U2dv9eUJ1sV46boHkQgppYmAz9YH8FdZduV8aJayPViaKcyPmbDhEw6UW8TM5iFZLXNs7HBnJHUKCeTdNK4FUEL7vAugxAV9WUUZ43BZjJk2SmSeps9TCXjt1Ci9fKWp3d9QSoYvTpxwzyUFHjRKtbUgwq55ZfkBp5bV2Bpz9qSuKywKewW7Hh4S1nCUScwwzpKDozb3zic1V9p2k8rQxoPsRxjUJ8bjhNDdsN8d7KukFuc3n47fXzdWttvnxwsujLJRGnQbgJuknQqx3KLf5kJXHzwjG6TzigZk2t24qeB6d3hbYiaDr2fFkUJBL3tukTHhfNkQYRXuz3kucVDzvejHyqJaF51mXG8BjMN5aQj91ZJXCaPVqkMWCzmvyaqmXMdRiJdSAynhXbQK91xf6RwdNhz1tg5f9B6oJJMhsi9UYSVymmax8VLKD9AKzBCBDcfyD83m3jyS1VgKGZn3SkQmr6bsoWq88L3GsMnnmYUGogvdAYarTqg3pzkjCMxHzmJBMN6ofnUk8c1sRTXQue7BbyUaN5uZu3KW6CmFsEfpuqVvnqFW93TU1jrPP2S8yz8AexAnARPCKE8Yz7RfVaT6RCavwQKL3u5iookwRWEZXW1QWmM37yJWHD87SjVynyg327a1CLwcBxmE2CB48QeNVGyQki4CTQMqw2o8TMhDPJej1g68oniAjBcxBLSCs7KGvK3k7AfrHbCMULX9CTibYhCjdFjbsbBoocqJpxxcvkMo1fEEiAzZuiBVZQDYktDdTVbhKHvYkW25HcYX75NJrpNAhm7AjFeKLzEVxqAQkMfvTufpESNRZF4kQqg2Rg8h2ajcKTd5cpEPwXCrZLHm4EaZEmZVbg3QNfGhn7BJu1bHMtLqPD4y8eJxm2uGrW6saf6qKYmmu64F8A667NbD4yskPRQ1S863VzwGpxxmgLc1Ta3R46jEqsAoRDoZVUaCgBBZG3Yg1CTgi1EVBMXU7qvY4n3h8o2FLCEMWY4KadnV3iD4FbcdCmg4yxBosNAZgbPjhgGjCimjh4YsLd9zymGLmivmz2ZBg5m3xaiXT9NN81X9C1JUujd';
|
|
951
|
-
const beef = sdk_1.Beef.
|
|
1054
|
+
const beef = sdk_1.Beef.fromBinaryStrict((0, utils_1.fromBase58)(b58Beef));
|
|
952
1055
|
const btx = beef.txs.at(-1);
|
|
953
1056
|
const txid = btx.txid;
|
|
954
|
-
console.log('Throwing dummy WERR_REVIEW_ACTIONS');
|
|
955
1057
|
throw new WERR_errors_1.WERR_REVIEW_ACTIONS([
|
|
956
1058
|
{
|
|
957
1059
|
txid, // only care that it is syntactically a txid
|
|
@@ -972,7 +1074,7 @@ function throwDummyReviewActions() {
|
|
|
972
1074
|
* @returns
|
|
973
1075
|
*/
|
|
974
1076
|
function validateListOutputsArgs(args) {
|
|
975
|
-
const vargs =
|
|
1077
|
+
const vargs = (0, validationHelpers_1.validateListOutputsArgs)(args);
|
|
976
1078
|
const balancePrefix = 'balance ';
|
|
977
1079
|
if (vargs.basket.startsWith(balancePrefix)) {
|
|
978
1080
|
vargs.basket = vargs.basket.slice(balancePrefix.length);
|