@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
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.KnexSyncTransferStore = void 0;
|
|
4
|
+
const node_crypto_1 = require("node:crypto");
|
|
5
|
+
const SyncTransfer_1 = require("./SyncTransfer");
|
|
6
|
+
const WERR_errors_1 = require("../../sdk/WERR_errors");
|
|
7
|
+
const TTL_MS = 15 * 60 * 1000;
|
|
8
|
+
/** Durable, identity-scoped staging in the wallet database; never part of exported wallet data. */
|
|
9
|
+
class KnexSyncTransferStore {
|
|
10
|
+
knex;
|
|
11
|
+
capabilities;
|
|
12
|
+
constructor(knex, capabilities) {
|
|
13
|
+
this.knex = knex;
|
|
14
|
+
this.capabilities = capabilities;
|
|
15
|
+
}
|
|
16
|
+
async locked(work) {
|
|
17
|
+
return await this.knex.transaction(async (trx) => {
|
|
18
|
+
// A write takes the SQLite lock as well as the MySQL row lock before reading quotas.
|
|
19
|
+
const locked = await trx('sync_transfers').where({ slot: 0 }).update({ expiresAt: 0 });
|
|
20
|
+
if (locked !== 1)
|
|
21
|
+
throw new Error('Wallet sync transfer migration is required');
|
|
22
|
+
return await work(trx);
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
manifest(row) {
|
|
26
|
+
return {
|
|
27
|
+
transferId: row.transferId,
|
|
28
|
+
digest: row.digest,
|
|
29
|
+
totalBytes: Number(row.totalBytes),
|
|
30
|
+
partBytes: Number(row.partBytes),
|
|
31
|
+
expiresAt: Number(row.expiresAt)
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
async row(trx, identityKey, transferId) {
|
|
35
|
+
if (!/^[a-f0-9]{64}$/.test(transferId))
|
|
36
|
+
throw new TypeError('Invalid sync transfer identifier');
|
|
37
|
+
const row = await trx('sync_transfers').where({ identityKey, transferId }).first();
|
|
38
|
+
if (row == null || Number(row.expiresAt) <= Date.now())
|
|
39
|
+
throw new WERR_errors_1.WERR_INVALID_OPERATION('Wallet sync transfer expired; resume from the saved wallet checkpoint');
|
|
40
|
+
return row;
|
|
41
|
+
}
|
|
42
|
+
async clear(trx, slot) {
|
|
43
|
+
await trx('sync_transfer_parts').where({ slot }).delete();
|
|
44
|
+
await trx('sync_transfers').where({ slot }).update({
|
|
45
|
+
transferId: null,
|
|
46
|
+
identityKey: null,
|
|
47
|
+
context: null,
|
|
48
|
+
direction: null,
|
|
49
|
+
digest: null,
|
|
50
|
+
totalBytes: null,
|
|
51
|
+
partBytes: null,
|
|
52
|
+
receivedBytes: 0,
|
|
53
|
+
expiresAt: 0,
|
|
54
|
+
state: null,
|
|
55
|
+
result: null
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
async allocate(identityKey, context, direction, totalBytes, digest) {
|
|
59
|
+
if (!Number.isSafeInteger(totalBytes) ||
|
|
60
|
+
totalBytes < 1 ||
|
|
61
|
+
totalBytes > this.capabilities.maxBytes ||
|
|
62
|
+
!/^[a-f0-9]{64}$/.test(digest) ||
|
|
63
|
+
!/^[a-f0-9]{64}$/.test(context)) {
|
|
64
|
+
throw new RangeError('Wallet sync transfer exceeds the negotiated size or has invalid integrity metadata');
|
|
65
|
+
}
|
|
66
|
+
return await this.locked(async (trx) => {
|
|
67
|
+
const expired = await trx('sync_transfers')
|
|
68
|
+
.where('slot', '>', 0)
|
|
69
|
+
.whereNotNull('transferId')
|
|
70
|
+
.where('expiresAt', '<=', Date.now());
|
|
71
|
+
for (const row of expired)
|
|
72
|
+
await this.clear(trx, row.slot);
|
|
73
|
+
const existing = await trx('sync_transfers').where({ identityKey, context, direction }).first();
|
|
74
|
+
if (existing != null)
|
|
75
|
+
return { row: existing, created: false };
|
|
76
|
+
const owned = await trx('sync_transfers').where({ identityKey });
|
|
77
|
+
if (owned.length >= 2)
|
|
78
|
+
throw new Error('Two wallet sync transfers are already pending; resume them or wait for their expiry');
|
|
79
|
+
const available = await trx('sync_transfers')
|
|
80
|
+
.where('slot', '>', 0)
|
|
81
|
+
.whereNull('transferId')
|
|
82
|
+
.orderBy('slot')
|
|
83
|
+
.first();
|
|
84
|
+
if (available == null)
|
|
85
|
+
throw new Error('Wallet sync transfer capacity is busy; retry later');
|
|
86
|
+
const row = {
|
|
87
|
+
slot: available.slot,
|
|
88
|
+
transferId: (0, node_crypto_1.randomBytes)(32).toString('hex'),
|
|
89
|
+
identityKey,
|
|
90
|
+
context,
|
|
91
|
+
direction,
|
|
92
|
+
digest,
|
|
93
|
+
totalBytes,
|
|
94
|
+
receivedBytes: 0,
|
|
95
|
+
partBytes: this.capabilities.partBytes,
|
|
96
|
+
expiresAt: Date.now() + TTL_MS,
|
|
97
|
+
state: direction === 'read' ? 'building' : 'ready',
|
|
98
|
+
result: null
|
|
99
|
+
};
|
|
100
|
+
await trx('sync_transfers').where({ slot: row.slot }).update(row);
|
|
101
|
+
return { row, created: true };
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
async beginRead(identityKey, context, bytes) {
|
|
105
|
+
const { row, created } = await this.allocate(identityKey, context, 'read', bytes.length, (0, SyncTransfer_1.syncTransferDigest)(bytes));
|
|
106
|
+
if (!created && row.state === 'ready')
|
|
107
|
+
return this.manifest(row);
|
|
108
|
+
return await this.locked(async (trx) => {
|
|
109
|
+
const saved = await this.row(trx, identityKey, row.transferId);
|
|
110
|
+
if (saved.state === 'ready')
|
|
111
|
+
return this.manifest(saved);
|
|
112
|
+
await trx('sync_transfer_parts').where({ slot: row.slot }).delete();
|
|
113
|
+
for (let offset = 0; offset < bytes.length; offset += row.partBytes) {
|
|
114
|
+
await trx('sync_transfer_parts').insert({
|
|
115
|
+
slot: row.slot,
|
|
116
|
+
offset,
|
|
117
|
+
bytes: Buffer.from(bytes.subarray(offset, offset + row.partBytes))
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
const ready = {
|
|
121
|
+
...saved,
|
|
122
|
+
state: 'ready',
|
|
123
|
+
digest: (0, SyncTransfer_1.syncTransferDigest)(bytes),
|
|
124
|
+
totalBytes: bytes.length,
|
|
125
|
+
receivedBytes: bytes.length
|
|
126
|
+
};
|
|
127
|
+
await trx('sync_transfers').where({ slot: row.slot }).update(ready);
|
|
128
|
+
return this.manifest(ready);
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
async beginWrite(identityKey, digest, totalBytes) {
|
|
132
|
+
const { row } = await this.allocate(identityKey, digest, 'write', totalBytes, digest);
|
|
133
|
+
if (Number(row.totalBytes) !== totalBytes || row.digest !== digest)
|
|
134
|
+
throw new Error('Wallet sync transfer metadata changed');
|
|
135
|
+
return { ...this.manifest(row), receivedBytes: Number(row.receivedBytes) };
|
|
136
|
+
}
|
|
137
|
+
async read(identityKey, transferId, offset) {
|
|
138
|
+
return await this.locked(async (trx) => {
|
|
139
|
+
const row = await this.row(trx, identityKey, transferId);
|
|
140
|
+
if (row.direction !== 'read' ||
|
|
141
|
+
row.state !== 'ready' ||
|
|
142
|
+
!Number.isSafeInteger(offset) ||
|
|
143
|
+
offset < 0 ||
|
|
144
|
+
offset >= row.totalBytes ||
|
|
145
|
+
offset % row.partBytes !== 0)
|
|
146
|
+
throw new TypeError('Invalid wallet sync part offset');
|
|
147
|
+
const part = await trx('sync_transfer_parts')
|
|
148
|
+
.where({ slot: row.slot, offset })
|
|
149
|
+
.first();
|
|
150
|
+
if (part == null)
|
|
151
|
+
throw new Error('Wallet sync transfer part is missing');
|
|
152
|
+
return { offset, bytes: new Uint8Array(part.bytes) };
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
async write(identityKey, transferId, offset, bytes) {
|
|
156
|
+
return await this.locked(async (trx) => {
|
|
157
|
+
const row = await this.row(trx, identityKey, transferId);
|
|
158
|
+
if (row.direction !== 'write' ||
|
|
159
|
+
row.state !== 'ready' ||
|
|
160
|
+
!Number.isSafeInteger(offset) ||
|
|
161
|
+
offset < 0 ||
|
|
162
|
+
offset % row.partBytes !== 0 ||
|
|
163
|
+
!(bytes instanceof Uint8Array) ||
|
|
164
|
+
bytes.length !== Math.min(row.partBytes, row.totalBytes - offset))
|
|
165
|
+
throw new TypeError('Invalid wallet sync part');
|
|
166
|
+
if (offset < row.receivedBytes) {
|
|
167
|
+
const prior = await trx('sync_transfer_parts')
|
|
168
|
+
.where({ slot: row.slot, offset })
|
|
169
|
+
.first();
|
|
170
|
+
if (prior == null || !Buffer.from(bytes).equals(prior.bytes))
|
|
171
|
+
throw new Error('Wallet sync part replay differs from saved bytes');
|
|
172
|
+
return Number(row.receivedBytes);
|
|
173
|
+
}
|
|
174
|
+
if (offset !== Number(row.receivedBytes))
|
|
175
|
+
throw new Error('Wallet sync part is out of order');
|
|
176
|
+
await trx('sync_transfer_parts').insert({ slot: row.slot, offset, bytes: Buffer.from(bytes) });
|
|
177
|
+
const receivedBytes = offset + bytes.length;
|
|
178
|
+
await trx('sync_transfers').where({ slot: row.slot }).update({ receivedBytes });
|
|
179
|
+
return receivedBytes;
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
async loadWrite(identityKey, transferId) {
|
|
183
|
+
return await this.locked(async (trx) => {
|
|
184
|
+
const row = await this.row(trx, identityKey, transferId);
|
|
185
|
+
if (row.direction !== 'write' || Number(row.receivedBytes) !== Number(row.totalBytes))
|
|
186
|
+
throw new Error('Wallet sync transfer is incomplete');
|
|
187
|
+
if (row.state === 'complete')
|
|
188
|
+
return { bytes: new Uint8Array(), result: JSON.parse(row.result) };
|
|
189
|
+
const parts = await trx('sync_transfer_parts')
|
|
190
|
+
.where({ slot: row.slot })
|
|
191
|
+
.orderBy('offset');
|
|
192
|
+
const bytes = new Uint8Array(Number(row.totalBytes));
|
|
193
|
+
let offset = 0;
|
|
194
|
+
for (const part of parts) {
|
|
195
|
+
if (part.offset !== offset)
|
|
196
|
+
throw new Error('Wallet sync transfer part is missing');
|
|
197
|
+
bytes.set(part.bytes, offset);
|
|
198
|
+
offset += part.bytes.length;
|
|
199
|
+
}
|
|
200
|
+
if (offset !== bytes.length || (0, SyncTransfer_1.syncTransferDigest)(bytes) !== row.digest)
|
|
201
|
+
throw new Error('Wallet sync transfer integrity check failed');
|
|
202
|
+
return { bytes };
|
|
203
|
+
});
|
|
204
|
+
}
|
|
205
|
+
async complete(identityKey, transferId, result) {
|
|
206
|
+
await this.locked(async (trx) => {
|
|
207
|
+
const row = await this.row(trx, identityKey, transferId);
|
|
208
|
+
await trx('sync_transfers')
|
|
209
|
+
.where({ slot: row.slot })
|
|
210
|
+
.update({ state: 'complete', result: JSON.stringify(result) });
|
|
211
|
+
await trx('sync_transfer_parts').where({ slot: row.slot }).delete();
|
|
212
|
+
});
|
|
213
|
+
}
|
|
214
|
+
async release(identityKey, transferId) {
|
|
215
|
+
await this.locked(async (trx) => {
|
|
216
|
+
const row = await this.row(trx, identityKey, transferId);
|
|
217
|
+
await this.clear(trx, row.slot);
|
|
218
|
+
});
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
exports.KnexSyncTransferStore = KnexSyncTransferStore;
|
|
222
|
+
//# sourceMappingURL=KnexSyncTransferStore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KnexSyncTransferStore.js","sourceRoot":"","sources":["../../../../src/storage/remoting/KnexSyncTransferStore.ts"],"names":[],"mappings":";;;AACA,6CAAyC;AACzC,iDAKuB;AACvB,uDAA8D;AAE9D,MAAM,MAAM,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;AAgB7B,mGAAmG;AACnG;IAEqB,IAAI;IACZ,YAAY;IAFvB,YACmB,IAAU,EAClB,YAAsC;oBAD9B,IAAI;4BACZ,YAAY;IACpB,CAAC;IAEI,KAAK,CAAC,MAAM,CAAI,IAA2C;QACjE,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;YAC7C,qFAAqF;YACrF,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAA;YACtF,IAAI,MAAM,KAAK,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;YAC/E,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,CAAA;QACxB,CAAC,CAAC,CAAA;IACJ,CAAC;IAEO,QAAQ,CAAC,GAAgB;QAC/B,OAAO;YACL,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC;YAClC,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC;YAChC,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC;SACjC,CAAA;IACH,CAAC;IAEO,KAAK,CAAC,GAAG,CAAC,GAAqB,EAAE,WAAmB,EAAE,UAAkB;QAC9E,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,kCAAkC,CAAC,CAAA;QAC/F,MAAM,GAAG,GAAG,MAAM,GAAG,CAAc,gBAAgB,CAAC,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC,KAAK,EAAE,CAAA;QAC/F,IAAI,GAAG,IAAI,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE;YACpD,MAAM,IAAI,oCAAsB,CAAC,uEAAuE,CAAC,CAAA;QAC3G,OAAO,GAAG,CAAA;IACZ,CAAC;IAEO,KAAK,CAAC,KAAK,CAAC,GAAqB,EAAE,IAAY;QACrD,MAAM,GAAG,CAAC,qBAAqB,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAA;QACzD,MAAM,GAAG,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;YACjD,UAAU,EAAE,IAAI;YAChB,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,IAAI;YACZ,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,IAAI;YACf,aAAa,EAAE,CAAC;YAChB,SAAS,EAAE,CAAC;YACZ,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,IAAI;SACb,CAAC,CAAA;IACJ,CAAC;IAEO,KAAK,CAAC,QAAQ,CACpB,WAAmB,EACnB,OAAe,EACf,SAA2B,EAC3B,UAAkB,EAClB,MAAc;QAEd,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC;YACjC,UAAU,GAAG,CAAC;YACd,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ;YACvC,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC;YAC9B,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,EAC/B,CAAC;YACD,MAAM,IAAI,UAAU,CAAC,oFAAoF,CAAC,CAAA;QAC5G,CAAC;QACD,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;YACnC,MAAM,OAAO,GAAG,MAAM,GAAG,CAAc,gBAAgB,CAAC;iBACrD,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;iBACrB,YAAY,CAAC,YAAY,CAAC;iBAC1B,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;YACvC,KAAK,MAAM,GAAG,IAAI,OAAO;gBAAE,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,CAAA;YAC1D,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAc,gBAAgB,CAAC,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,KAAK,EAAE,CAAA;YAC5G,IAAI,QAAQ,IAAI,IAAI;gBAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;YAC9D,MAAM,KAAK,GAAG,MAAM,GAAG,CAAc,gBAAgB,CAAC,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,CAAC,CAAA;YAC7E,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;gBACnB,MAAM,IAAI,KAAK,CAAC,qFAAqF,CAAC,CAAA;YACxG,MAAM,SAAS,GAAG,MAAM,GAAG,CAAc,gBAAgB,CAAC;iBACvD,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;iBACrB,SAAS,CAAC,YAAY,CAAC;iBACvB,OAAO,CAAC,MAAM,CAAC;iBACf,KAAK,EAAE,CAAA;YACV,IAAI,SAAS,IAAI,IAAI;gBAAE,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAA;YAC5F,MAAM,GAAG,GAAgB;gBACvB,IAAI,EAAE,SAAS,CAAC,IAAI;gBACpB,UAAU,EAAE,IAAA,yBAAW,EAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAC3C,WAAW;gBACX,OAAO;gBACP,SAAS;gBACT,MAAM;gBACN,UAAU;gBACV,aAAa,EAAE,CAAC;gBAChB,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,SAAS;gBACtC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM;gBAC9B,KAAK,EAAE,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO;gBAClD,MAAM,EAAE,IAAI;aACb,CAAA;YACD,MAAM,GAAG,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;YACjE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;QAC/B,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,WAAmB,EAAE,OAAe,EAAE,KAAiB;QACrE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,IAAA,iCAAkB,EAAC,KAAK,CAAC,CAAC,CAAA;QACnH,IAAI,CAAC,OAAO,IAAI,GAAG,CAAC,KAAK,KAAK,OAAO;YAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;QAChE,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;YACnC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,CAAC,UAAU,CAAC,CAAA;YAC9D,IAAI,KAAK,CAAC,KAAK,KAAK,OAAO;gBAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;YACxD,MAAM,GAAG,CAAC,qBAAqB,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAA;YACnE,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,MAAM,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;gBACpE,MAAM,GAAG,CAAC,qBAAqB,CAAC,CAAC,MAAM,CAAC;oBACtC,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,MAAM;oBACN,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC;iBACnE,CAAC,CAAA;YACJ,CAAC;YACD,MAAM,KAAK,GAAG;gBACZ,GAAG,KAAK;gBACR,KAAK,EAAE,OAAgB;gBACvB,MAAM,EAAE,IAAA,iCAAkB,EAAC,KAAK,CAAC;gBACjC,UAAU,EAAE,KAAK,CAAC,MAAM;gBACxB,aAAa,EAAE,KAAK,CAAC,MAAM;aAC5B,CAAA;YACD,MAAM,GAAG,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACnE,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAC7B,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CACd,WAAmB,EACnB,MAAc,EACd,UAAkB;QAElB,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,CAAA;QACrF,IAAI,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,UAAU,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM;YAChE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;QAC1D,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAA;IAC5E,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,WAAmB,EAAE,UAAkB,EAAE,MAAc;QAChE,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;YACnC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,UAAU,CAAC,CAAA;YACxD,IACE,GAAG,CAAC,SAAS,KAAK,MAAM;gBACxB,GAAG,CAAC,KAAK,KAAK,OAAO;gBACrB,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC;gBAC7B,MAAM,GAAG,CAAC;gBACV,MAAM,IAAI,GAAG,CAAC,UAAU;gBACxB,MAAM,GAAG,GAAG,CAAC,SAAS,KAAK,CAAC;gBAE5B,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAA;YACxD,MAAM,IAAI,GAAG,MAAM,GAAG,CAAkD,qBAAqB,CAAC;iBAC3F,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;iBACjC,KAAK,EAAE,CAAA;YACV,IAAI,IAAI,IAAI,IAAI;gBAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;YACzE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAA;QACtD,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,WAAmB,EAAE,UAAkB,EAAE,MAAc,EAAE,KAAiB;QACpF,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;YACnC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,UAAU,CAAC,CAAA;YACxD,IACE,GAAG,CAAC,SAAS,KAAK,OAAO;gBACzB,GAAG,CAAC,KAAK,KAAK,OAAO;gBACrB,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC;gBAC7B,MAAM,GAAG,CAAC;gBACV,MAAM,GAAG,GAAG,CAAC,SAAS,KAAK,CAAC;gBAC5B,CAAC,CAAC,KAAK,YAAY,UAAU,CAAC;gBAC9B,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,UAAU,GAAG,MAAM,CAAC;gBAEjE,MAAM,IAAI,SAAS,CAAC,0BAA0B,CAAC,CAAA;YACjD,IAAI,MAAM,GAAG,GAAG,CAAC,aAAa,EAAE,CAAC;gBAC/B,MAAM,KAAK,GAAG,MAAM,GAAG,CAAkD,qBAAqB,CAAC;qBAC5F,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;qBACjC,KAAK,EAAE,CAAA;gBACV,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;oBAC1D,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;gBACrE,OAAO,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;YAClC,CAAC;YACD,IAAI,MAAM,KAAK,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAA;YAC7F,MAAM,GAAG,CAAC,qBAAqB,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YAC9F,MAAM,aAAa,GAAG,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;YAC3C,MAAM,GAAG,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,aAAa,EAAE,CAAC,CAAA;YAC/E,OAAO,aAAa,CAAA;QACtB,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,WAAmB,EAAE,UAAkB;QACrD,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;YACnC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,UAAU,CAAC,CAAA;YACxD,IAAI,GAAG,CAAC,SAAS,KAAK,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,KAAK,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC;gBACnF,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;YACvD,IAAI,GAAG,CAAC,KAAK,KAAK,UAAU;gBAAE,OAAO,EAAE,KAAK,EAAE,IAAI,UAAU,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAO,CAAC,EAAE,CAAA;YACjG,MAAM,KAAK,GAAG,MAAM,GAAG,CAAkD,qBAAqB,CAAC;iBAC5F,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;iBACzB,OAAO,CAAC,QAAQ,CAAC,CAAA;YACpB,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAA;YACpD,IAAI,MAAM,GAAG,CAAC,CAAA;YACd,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM;oBAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;gBACnF,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;gBAC7B,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAA;YAC7B,CAAC;YACD,IAAI,MAAM,KAAK,KAAK,CAAC,MAAM,IAAI,IAAA,iCAAkB,EAAC,KAAK,CAAC,KAAK,GAAG,CAAC,MAAM;gBACrE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;YAChE,OAAO,EAAE,KAAK,EAAE,CAAA;QAClB,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,WAAmB,EAAE,UAAkB,EAAE,MAAe;QACrE,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;YAC5B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,UAAU,CAAC,CAAA;YACxD,MAAM,GAAG,CAAC,gBAAgB,CAAC;iBACxB,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;iBACzB,MAAM,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YAChE,MAAM,GAAG,CAAC,qBAAqB,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAA;QACrE,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,WAAmB,EAAE,UAAkB;QACnD,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;YAC5B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,UAAU,CAAC,CAAA;YACxD,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,CAAA;QACjC,CAAC,CAAC,CAAA;IACJ,CAAC;CACF"}
|
|
@@ -10,7 +10,12 @@ import { StorageClientBase, type StorageClientOptions } from './StorageClientBas
|
|
|
10
10
|
* The `AuthFetch` component is used to secure and authenticate the requests to the remote server.
|
|
11
11
|
*
|
|
12
12
|
* `AuthFetch` is initialized with a BRC-100 wallet which establishes the identity of
|
|
13
|
-
* the party making requests of the remote service.
|
|
13
|
+
* the party making requests of the remote service. Responses must complete mutual
|
|
14
|
+
* authentication. By default, the first authenticated server identity is trusted for
|
|
15
|
+
* this client instance; callers can instead supply `serverIdentityKey` as an
|
|
16
|
+
* independently validated pin. The distinct storage-provider identity advertised by
|
|
17
|
+
* the authenticated `makeAvailable` response is authoritative by default; callers
|
|
18
|
+
* can independently pin it with `storageIdentityKey`.
|
|
14
19
|
*
|
|
15
20
|
* For details of the API implemented, follow the "See also" link for the `WalletStorageProvider` interface.
|
|
16
21
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StorageClient.d.ts","sourceRoot":"","sources":["../../../../src/storage/remoting/StorageClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAyB,MAAM,UAAU,CAAA;AAGjE,OAAO,EAAE,iBAAiB,EAAE,KAAK,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"StorageClient.d.ts","sourceRoot":"","sources":["../../../../src/storage/remoting/StorageClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAyB,MAAM,UAAU,CAAA;AAGjE,OAAO,EAAE,iBAAiB,EAAE,KAAK,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAqElF;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,aAAc,SAAQ,iBAAiB;IAClD,YAAY,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,oBAAyB,EAE3F;IAMD;;;;OAIG;IACH,UAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAmGxE;IAED,OAAO,CAAC,eAAe;IAYvB,OAAO,CAAC,iBAAiB;CAM1B"}
|
|
@@ -5,6 +5,56 @@ const WalletErrorFromJson_1 = require("../../sdk/WalletErrorFromJson");
|
|
|
5
5
|
const WalletLogger_1 = require("../../WalletLogger");
|
|
6
6
|
const StorageClientBase_1 = require("./StorageClientBase");
|
|
7
7
|
const BinaryJson_1 = require("./BinaryJson");
|
|
8
|
+
const MAX_REMOTE_LOG_ENTRIES = 1000;
|
|
9
|
+
const MAX_REMOTE_LOG_MESSAGE_LENGTH = 4096;
|
|
10
|
+
function invalidRemoteLog() {
|
|
11
|
+
throw new Error('Wallet storage returned invalid remote log data');
|
|
12
|
+
}
|
|
13
|
+
function validatedRemoteLog(result) {
|
|
14
|
+
if (result == null || typeof result !== 'object' || Array.isArray(result))
|
|
15
|
+
return undefined;
|
|
16
|
+
const log = Object.getOwnPropertyDescriptor(result, 'log');
|
|
17
|
+
if (log == null)
|
|
18
|
+
return undefined;
|
|
19
|
+
if (!('value' in log) || log.value == null || typeof log.value !== 'object' || Array.isArray(log.value)) {
|
|
20
|
+
return invalidRemoteLog();
|
|
21
|
+
}
|
|
22
|
+
const logProperties = Object.getOwnPropertyDescriptors(log.value);
|
|
23
|
+
if (Object.getOwnPropertySymbols(log.value).length !== 0 ||
|
|
24
|
+
Object.keys(logProperties).some(key => key !== 'logs') ||
|
|
25
|
+
Object.values(logProperties).some(property => property.get != null || property.set != null) ||
|
|
26
|
+
!Array.isArray(logProperties.logs?.value) ||
|
|
27
|
+
logProperties.logs.value.length > MAX_REMOTE_LOG_ENTRIES) {
|
|
28
|
+
return invalidRemoteLog();
|
|
29
|
+
}
|
|
30
|
+
const logs = logProperties.logs.value.map((entry) => {
|
|
31
|
+
if (entry == null || typeof entry !== 'object' || Array.isArray(entry))
|
|
32
|
+
return invalidRemoteLog();
|
|
33
|
+
const properties = Object.getOwnPropertyDescriptors(entry);
|
|
34
|
+
const keys = Object.keys(properties);
|
|
35
|
+
const booleanKeys = ['isError', 'isBegin', 'isEnd'];
|
|
36
|
+
if (Object.getOwnPropertySymbols(entry).length !== 0 ||
|
|
37
|
+
Object.values(properties).some(property => property.get != null || property.set != null) ||
|
|
38
|
+
keys.some(key => !['when', 'indent', 'log', ...booleanKeys].includes(key)) ||
|
|
39
|
+
!Number.isSafeInteger(properties.when?.value) ||
|
|
40
|
+
properties.when.value < 0 ||
|
|
41
|
+
!Number.isSafeInteger(properties.indent?.value) ||
|
|
42
|
+
properties.indent.value < 0 ||
|
|
43
|
+
properties.indent.value > 1000 ||
|
|
44
|
+
typeof properties.log?.value !== 'string' ||
|
|
45
|
+
properties.log.value.length > MAX_REMOTE_LOG_MESSAGE_LENGTH ||
|
|
46
|
+
booleanKeys.some(key => properties[key] != null && typeof properties[key].value !== 'boolean')) {
|
|
47
|
+
return invalidRemoteLog();
|
|
48
|
+
}
|
|
49
|
+
return {
|
|
50
|
+
when: properties.when.value,
|
|
51
|
+
indent: properties.indent.value,
|
|
52
|
+
log: properties.log.value,
|
|
53
|
+
...Object.fromEntries(booleanKeys.filter(key => properties[key] != null).map(key => [key, properties[key].value]))
|
|
54
|
+
};
|
|
55
|
+
});
|
|
56
|
+
return { logs };
|
|
57
|
+
}
|
|
8
58
|
/**
|
|
9
59
|
* `StorageClient` implements the `WalletStorageProvider` interface which allows it to
|
|
10
60
|
* serve as a BRC-100 wallet's active storage.
|
|
@@ -15,7 +65,12 @@ const BinaryJson_1 = require("./BinaryJson");
|
|
|
15
65
|
* The `AuthFetch` component is used to secure and authenticate the requests to the remote server.
|
|
16
66
|
*
|
|
17
67
|
* `AuthFetch` is initialized with a BRC-100 wallet which establishes the identity of
|
|
18
|
-
* the party making requests of the remote service.
|
|
68
|
+
* the party making requests of the remote service. Responses must complete mutual
|
|
69
|
+
* authentication. By default, the first authenticated server identity is trusted for
|
|
70
|
+
* this client instance; callers can instead supply `serverIdentityKey` as an
|
|
71
|
+
* independently validated pin. The distinct storage-provider identity advertised by
|
|
72
|
+
* the authenticated `makeAvailable` response is authoritative by default; callers
|
|
73
|
+
* can independently pin it with `storageIdentityKey`.
|
|
19
74
|
*
|
|
20
75
|
* For details of the API implemented, follow the "See also" link for the `WalletStorageProvider` interface.
|
|
21
76
|
*/
|
|
@@ -36,18 +91,18 @@ class StorageClient extends StorageClientBase_1.StorageClientBase {
|
|
|
36
91
|
const loggerState = this.startRpcLogging(method, params);
|
|
37
92
|
const { logger } = loggerState;
|
|
38
93
|
try {
|
|
39
|
-
const id = this.
|
|
94
|
+
const id = this.nextRequestId();
|
|
40
95
|
const body = {
|
|
41
96
|
jsonrpc: '2.0',
|
|
42
97
|
method,
|
|
43
98
|
params,
|
|
44
99
|
id
|
|
45
100
|
};
|
|
46
|
-
const requestUsesBinary = this.
|
|
101
|
+
const requestUsesBinary = this.requestUsesBinary(method);
|
|
47
102
|
const requestBody = await this.traceRpcStep('wallet.storage.request.serialize', rpcSpan, () => (0, BinaryJson_1.stringifyJsonRpc)(body, requestUsesBinary), { 'rpc.encoding': requestUsesBinary ? 'binary-json' : 'json' });
|
|
48
103
|
let response;
|
|
49
104
|
try {
|
|
50
|
-
response = await this.traceRpcStep('wallet.storage.http', rpcSpan, async () => await this.
|
|
105
|
+
response = await this.traceRpcStep('wallet.storage.http', rpcSpan, async () => await this.authenticatedFetch(this.endpointUrl, {
|
|
51
106
|
method: 'POST',
|
|
52
107
|
headers: {
|
|
53
108
|
'Content-Type': 'application/json',
|
|
@@ -65,7 +120,7 @@ class StorageClient extends StorageClientBase_1.StorageClientBase {
|
|
|
65
120
|
throw error_;
|
|
66
121
|
}
|
|
67
122
|
if (!response.ok) {
|
|
68
|
-
throw
|
|
123
|
+
throw this.rpcResponseError(response);
|
|
69
124
|
}
|
|
70
125
|
const responseUsesBinary = response.headers.get(BinaryJson_1.BINARY_ENCODING_HEADER) === BinaryJson_1.BINARY_ENCODING;
|
|
71
126
|
if (responseUsesBinary)
|
|
@@ -74,18 +129,20 @@ class StorageClient extends StorageClientBase_1.StorageClientBase {
|
|
|
74
129
|
'http.response.status_code': response.status,
|
|
75
130
|
'rpc.encoding': responseUsesBinary ? 'binary-json' : 'json'
|
|
76
131
|
});
|
|
77
|
-
const json = await this.traceRpcStep('wallet.storage.response.parse', rpcSpan, () => (0, BinaryJson_1.parseJsonRpc)(responseText, responseUsesBinary), {
|
|
132
|
+
const json = await this.traceRpcStep('wallet.storage.response.parse', rpcSpan, () => (0, BinaryJson_1.validateJsonRpcResponse)((0, BinaryJson_1.parseJsonRpc)(responseText, responseUsesBinary), id), {
|
|
78
133
|
'rpc.encoding': responseUsesBinary ? 'binary-json' : 'json',
|
|
79
134
|
'response.size_bytes': responseText.length
|
|
80
135
|
});
|
|
81
|
-
if (json
|
|
136
|
+
if ('error' in json) {
|
|
82
137
|
(0, WalletLogger_1.logWalletError)(json.error, logger, 'error from remote service');
|
|
83
138
|
const werr = (0, WalletErrorFromJson_1.WalletErrorFromJson)(json.error);
|
|
84
139
|
throw werr;
|
|
85
140
|
}
|
|
86
141
|
if (logger != null) {
|
|
87
142
|
// merge log data from request processing
|
|
88
|
-
|
|
143
|
+
const remoteLog = validatedRemoteLog(json.result);
|
|
144
|
+
if (remoteLog != null)
|
|
145
|
+
logger.merge?.(remoteLog);
|
|
89
146
|
logger.groupEnd();
|
|
90
147
|
}
|
|
91
148
|
rpcSpan?.end({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StorageClient.js","sourceRoot":"","sources":["../../../../src/storage/remoting/StorageClient.ts"],"names":[],"mappings":";;;AACA,uEAAmE;AACnE,qDAAmD;AACnD,2DAAkF;AAClF,
|
|
1
|
+
{"version":3,"file":"StorageClient.js","sourceRoot":"","sources":["../../../../src/storage/remoting/StorageClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { type ValidCreateActionArgs, type ValidListActionsArgs, type ValidListCertificatesArgs, type ValidListOutputsArgs } from '@bsv/sdk/wallet/validationHelpers';
|
|
2
|
+
import { type SyncTransferCapabilities } from './SyncTransfer';
|
|
3
|
+
import { AbortActionArgs, AbortActionResult, InternalizeActionArgs, ListActionsResult, ListCertificatesResult, ListOutputsResult, RelinquishCertificateArgs, RelinquishOutputArgs, WalletInterface, AuthFetch, Telemetry, TelemetryConfig, TelemetrySpan } from '@bsv/sdk';
|
|
4
|
+
import { AuthId, FindCertificatesArgs, FindOutputBasketsArgs, FindOutputsArgs, FindProvenTxReqsArgs, ProcessSyncChunkResult, RequestSyncChunkArgs, StorageCreateActionResult, StorageInternalizeActionResult, StorageProcessActionArgs, StorageProcessActionResults, StoragePrepareNoSendExpiryResult, StorageActivateNoSendExpiryArgs, StorageActivateNoSendExpiryResult, StorageArmNoSendExpiryArgs, SyncChunk, SyncCheckpoint, UpdateProvenTxReqWithNewProvenTxArgs, UpdateProvenTxReqWithNewProvenTxResult, WalletStorageProvider } from '../../sdk/WalletStorage.interfaces';
|
|
5
|
+
import { AbortActionBatchResult, ActionBatchManifest, BeginActionBatchArgs, BeginActionBatchResult, CommitActionBatchByDigestArgs, CommitActionBatchResult, ExtendActionBatchArgs, ExtendActionBatchResult, PrepareActionBatchCommitResult, PutActionBatchBlobArgs, PutActionBatchPackArgs, ResumeActionBatchArgs, ResumeActionBatchResult, RenewActionBatchResult, StorageCapabilities } from '../../sdk/ActionBatch.interfaces';
|
|
4
6
|
import { TableSettings } from '../schema/tables/TableSettings';
|
|
5
7
|
import { WalletServices } from '../../sdk/WalletServices.interfaces';
|
|
6
8
|
import { TableUser } from '../schema/tables/TableUser';
|
|
@@ -10,6 +12,11 @@ import { TableOutputBasket } from '../schema/tables/TableOutputBasket';
|
|
|
10
12
|
import { TableOutput } from '../schema/tables/TableOutput';
|
|
11
13
|
import { TableProvenTxReq } from '../schema/tables/TableProvenTxReq';
|
|
12
14
|
import { EntityTimeStamp } from '../../sdk/types';
|
|
15
|
+
type RemoteStorageSettings = TableSettings & {
|
|
16
|
+
/** Runtime-only RPC advertisement, not a persisted settings-table column. */
|
|
17
|
+
syncCheckpointVersion?: 1;
|
|
18
|
+
syncTransfer?: SyncTransferCapabilities;
|
|
19
|
+
};
|
|
13
20
|
export interface StorageClientOptions {
|
|
14
21
|
/**
|
|
15
22
|
* Send compact tagged binary request values after the server advertises
|
|
@@ -22,6 +29,18 @@ export interface StorageClientOptions {
|
|
|
22
29
|
* supplied. Request parameters and response payloads are never emitted.
|
|
23
30
|
*/
|
|
24
31
|
telemetry?: TelemetryConfig;
|
|
32
|
+
/**
|
|
33
|
+
* Optional independently validated server identity key. When omitted, the
|
|
34
|
+
* first authenticated response is authoritative for this client instance.
|
|
35
|
+
*/
|
|
36
|
+
serverIdentityKey?: string;
|
|
37
|
+
/**
|
|
38
|
+
* Optional independently validated storage-provider identity. The storage
|
|
39
|
+
* and authenticated server may use distinct keys. When omitted, the value
|
|
40
|
+
* advertised in the first authenticated `makeAvailable` response is
|
|
41
|
+
* authoritative for this client instance.
|
|
42
|
+
*/
|
|
43
|
+
storageIdentityKey?: string;
|
|
25
44
|
}
|
|
26
45
|
/**
|
|
27
46
|
* Abstract base class shared by `StorageClient` and `StorageMobile`.
|
|
@@ -37,8 +56,18 @@ export declare abstract class StorageClientBase implements WalletStorageProvider
|
|
|
37
56
|
protected serverSupportsBinary: boolean;
|
|
38
57
|
protected readonly binaryRequests: boolean;
|
|
39
58
|
protected readonly telemetry: Telemetry;
|
|
40
|
-
|
|
59
|
+
private authenticatedServerIdentityKey?;
|
|
60
|
+
private readonly expectedStorageIdentityKey?;
|
|
61
|
+
private syncChunkRoughSizeLimit?;
|
|
62
|
+
/** Optional progress/cancellation hook for a bounded transfer; never receives wallet contents. */
|
|
63
|
+
onSyncTransferProgress?: (progress: {
|
|
64
|
+
direction: 'read' | 'write';
|
|
65
|
+
bytes: number;
|
|
66
|
+
totalBytes: number;
|
|
67
|
+
}) => void;
|
|
68
|
+
settings?: RemoteStorageSettings;
|
|
41
69
|
constructor(wallet: WalletInterface, endpointUrl: string, options?: StorageClientOptions);
|
|
70
|
+
protected authenticatedFetch(url: string, config: Parameters<AuthFetch['fetch']>[1]): Promise<Response>;
|
|
42
71
|
protected traceRpcCall<T>(method: string, params: unknown[], callback: (span?: TelemetrySpan) => Promise<T>): Promise<T>;
|
|
43
72
|
protected traceRpcStep<T>(name: string, parent: TelemetrySpan | undefined, callback: (span?: TelemetrySpan) => Promise<T> | T, attributes?: Readonly<Record<string, unknown>>): Promise<T>;
|
|
44
73
|
/**
|
|
@@ -55,6 +84,7 @@ export declare abstract class StorageClientBase implements WalletStorageProvider
|
|
|
55
84
|
* @param params The array of parameters to pass to the method in order.
|
|
56
85
|
*/
|
|
57
86
|
protected abstract rpcCall<T>(method: string, params: unknown[]): Promise<T>;
|
|
87
|
+
protected nextRequestId(): number;
|
|
58
88
|
/**
|
|
59
89
|
* @returns true once storage `TableSettings` have been retreived from remote storage.
|
|
60
90
|
*/
|
|
@@ -63,13 +93,13 @@ export declare abstract class StorageClientBase implements WalletStorageProvider
|
|
|
63
93
|
* @returns remote storage `TableSettings` if they have been retreived by `makeAvailable`.
|
|
64
94
|
* @throws WERR_INVALID_OPERATION if `makeAvailable` has not yet been called.
|
|
65
95
|
*/
|
|
66
|
-
getSettings():
|
|
96
|
+
getSettings(): RemoteStorageSettings;
|
|
67
97
|
/**
|
|
68
98
|
* Must be called prior to making use of storage.
|
|
69
99
|
* Retreives `TableSettings` from remote storage provider.
|
|
70
100
|
* @returns remote storage `TableSettings`
|
|
71
101
|
*/
|
|
72
|
-
makeAvailable(): Promise<
|
|
102
|
+
makeAvailable(): Promise<RemoteStorageSettings>;
|
|
73
103
|
/**
|
|
74
104
|
* Called to cleanup resources when no further use of this object will occur.
|
|
75
105
|
*/
|
|
@@ -108,7 +138,7 @@ export declare abstract class StorageClientBase implements WalletStorageProvider
|
|
|
108
138
|
* @param args Validated extension of original wallet `createAction` arguments.
|
|
109
139
|
* @returns `StorageCreateActionResults` supporting additional wallet processing to yield `createAction` results.
|
|
110
140
|
*/
|
|
111
|
-
createAction(auth: AuthId, args:
|
|
141
|
+
createAction(auth: AuthId, args: ValidCreateActionArgs): Promise<StorageCreateActionResult>;
|
|
112
142
|
/**
|
|
113
143
|
* Storage level processing for wallet `createAction` and `signAction`.
|
|
114
144
|
*
|
|
@@ -120,10 +150,14 @@ export declare abstract class StorageClientBase implements WalletStorageProvider
|
|
|
120
150
|
* @returns `StorageProcessActionResults` supporting final wallet processing to yield `createAction` or `signAction` results.
|
|
121
151
|
*/
|
|
122
152
|
processAction(auth: AuthId, args: StorageProcessActionArgs): Promise<StorageProcessActionResults>;
|
|
153
|
+
prepareNoSendExpiry(auth: AuthId, args: ValidCreateActionArgs): Promise<StoragePrepareNoSendExpiryResult>;
|
|
154
|
+
activateNoSendExpiry(auth: AuthId, args: StorageActivateNoSendExpiryArgs): Promise<StorageActivateNoSendExpiryResult>;
|
|
155
|
+
armNoSendExpiry(auth: AuthId, args: StorageArmNoSendExpiryArgs): Promise<void>;
|
|
123
156
|
getCapabilities(): Promise<StorageCapabilities>;
|
|
124
157
|
beginActionBatch(auth: AuthId, args: BeginActionBatchArgs): Promise<BeginActionBatchResult>;
|
|
125
158
|
extendActionBatch(auth: AuthId, args: ExtendActionBatchArgs): Promise<ExtendActionBatchResult>;
|
|
126
159
|
renewActionBatch(auth: AuthId, batchId: string): Promise<RenewActionBatchResult>;
|
|
160
|
+
resumeActionBatch(auth: AuthId, args: ResumeActionBatchArgs): Promise<ResumeActionBatchResult>;
|
|
127
161
|
prepareActionBatchCommit(auth: AuthId, manifest: ActionBatchManifest): Promise<PrepareActionBatchCommitResult>;
|
|
128
162
|
putActionBatchBlob(auth: AuthId, args: PutActionBatchBlobArgs): Promise<void>;
|
|
129
163
|
putActionBatchPack(_auth: AuthId, args: PutActionBatchPackArgs): Promise<void>;
|
|
@@ -148,6 +182,8 @@ export declare abstract class StorageClientBase implements WalletStorageProvider
|
|
|
148
182
|
user: TableUser;
|
|
149
183
|
isNew: boolean;
|
|
150
184
|
}>;
|
|
185
|
+
/** Read compact progress only when the provider advertises support. */
|
|
186
|
+
getSyncCheckpoint(auth: AuthId, storageIdentityKey: string, storageName: string): Promise<SyncCheckpoint | undefined>;
|
|
151
187
|
/**
|
|
152
188
|
* Used to both find and insert a `TableSyncState` record for the user to track wallet data replication across storage providers.
|
|
153
189
|
* @param auth Identifies client by identity key and the storage identity key of their currently active storage.
|
|
@@ -175,7 +211,7 @@ export declare abstract class StorageClientBase implements WalletStorageProvider
|
|
|
175
211
|
* @param args Validated extension of original wallet `listActions` arguments.
|
|
176
212
|
* @returns `listActions` results.
|
|
177
213
|
*/
|
|
178
|
-
listActions(auth: AuthId, vargs:
|
|
214
|
+
listActions(auth: AuthId, vargs: ValidListActionsArgs): Promise<ListActionsResult>;
|
|
179
215
|
/**
|
|
180
216
|
* Storage level processing for wallet `listOutputs`.
|
|
181
217
|
* @param auth Identifies client by identity key and the storage identity key of their currently active storage.
|
|
@@ -183,7 +219,7 @@ export declare abstract class StorageClientBase implements WalletStorageProvider
|
|
|
183
219
|
* @param args Validated extension of original wallet `listOutputs` arguments.
|
|
184
220
|
* @returns `listOutputs` results.
|
|
185
221
|
*/
|
|
186
|
-
listOutputs(auth: AuthId, vargs:
|
|
222
|
+
listOutputs(auth: AuthId, vargs: ValidListOutputsArgs): Promise<ListOutputsResult>;
|
|
187
223
|
/**
|
|
188
224
|
* Storage level processing for wallet `listCertificates`.
|
|
189
225
|
* @param auth Identifies client by identity key and the storage identity key of their currently active storage.
|
|
@@ -191,7 +227,7 @@ export declare abstract class StorageClientBase implements WalletStorageProvider
|
|
|
191
227
|
* @param args Validated extension of original wallet `listCertificates` arguments.
|
|
192
228
|
* @returns `listCertificates` results.
|
|
193
229
|
*/
|
|
194
|
-
listCertificates(auth: AuthId, vargs:
|
|
230
|
+
listCertificates(auth: AuthId, vargs: ValidListCertificatesArgs): Promise<ListCertificatesResult>;
|
|
195
231
|
/**
|
|
196
232
|
* Find user certificates, optionally with fields.
|
|
197
233
|
*
|
|
@@ -278,6 +314,16 @@ export declare abstract class StorageClientBase implements WalletStorageProvider
|
|
|
278
314
|
* @returns the next "chunk" of replication data
|
|
279
315
|
*/
|
|
280
316
|
getSyncChunk(args: RequestSyncChunkArgs): Promise<SyncChunk>;
|
|
317
|
+
private readSyncChunkResponse;
|
|
318
|
+
protected requestUsesBinary(method: string): boolean;
|
|
319
|
+
protected rpcResponseError(response: Response): Error;
|
|
320
|
+
private smallerSyncRequest;
|
|
321
|
+
private syncTransferCapabilities;
|
|
322
|
+
private syncTransferRetryDelay;
|
|
323
|
+
private transferPartCall;
|
|
324
|
+
private releaseSyncTransfer;
|
|
325
|
+
private downloadSyncTransfer;
|
|
326
|
+
private uploadSyncTransfer;
|
|
281
327
|
/**
|
|
282
328
|
* Handles the data received when a new transaction proof is found in response to an outstanding request for proof data:
|
|
283
329
|
*
|
|
@@ -315,4 +361,5 @@ export declare abstract class StorageClientBase implements WalletStorageProvider
|
|
|
315
361
|
*/
|
|
316
362
|
validateEntities<T extends EntityTimeStamp>(entities: T[], dateFields?: string[]): T[];
|
|
317
363
|
}
|
|
364
|
+
export {};
|
|
318
365
|
//# sourceMappingURL=StorageClientBase.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StorageClientBase.d.ts","sourceRoot":"","sources":["../../../../src/storage/remoting/StorageClientBase.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,iBAAiB,
|
|
1
|
+
{"version":3,"file":"StorageClientBase.d.ts","sourceRoot":"","sources":["../../../../src/storage/remoting/StorageClientBase.ts"],"names":[],"mappings":"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"}
|