@bopen-io/wallet-toolbox 2.6.2-brc153.5 → 2.14.5
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 +744 -1
- package/LICENSES/Open-BSV-License-4-wallet-pre-2026.txt +28 -0
- package/README.md +823 -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 +12996 -4571
- 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 +505 -190
- package/docs/no-send-expiry.md +167 -0
- package/docs/prepared-beef.md +197 -0
- package/docs/services.md +4013 -1153
- package/docs/setup.md +107 -56
- package/docs/storage.md +5781 -1599
- package/docs/sync-transfer.md +144 -0
- package/docs/wab-shamir.md +5 -1
- package/docs/wallet.md +10188 -10904
- 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 +14 -0
- package/out/src/Setup.d.ts.map +1 -1
- package/out/src/Setup.js +6 -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.map +1 -1
- package/out/src/monitor/MonitorDaemon.js +64 -16
- 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 +3 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js +240 -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 +68 -7
- package/out/src/storage/StorageKnex.d.ts.map +1 -1
- package/out/src/storage/StorageKnex.js +551 -105
- 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 +38 -49
- 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/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 +3 -0
- package/out/src/storage/index.all.d.ts.map +1 -1
- package/out/src/storage/index.all.js +3 -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/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 +22 -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 +32 -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 +21 -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.d.ts.map +1 -1
- package/out/src/storage/methods/reviewStatus.js +7 -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 +25 -15
- 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 +10 -1
- package/out/src/storage/remoting/StorageServer.d.ts.map +1 -1
- package/out/src/storage/remoting/StorageServer.js +221 -20
- 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 +6 -0
- package/out/src/storage/schema/KnexMigrations.d.ts.map +1 -1
- package/out/src/storage/schema/KnexMigrations.js +194 -5
- 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 +36 -32
- package/docs/open-rpc/index.html +0 -46
|
@@ -1,10 +1,128 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.StorageClientBase = void 0;
|
|
4
|
+
const SyncTransfer_1 = require("./SyncTransfer");
|
|
5
|
+
const syncChunkBinary_1 = require("./syncChunkBinary");
|
|
6
|
+
const syncCheckpoint_1 = require("../sync/syncCheckpoint");
|
|
4
7
|
const sdk_1 = require("@bsv/sdk");
|
|
5
8
|
const WERR_errors_1 = require("../../sdk/WERR_errors");
|
|
6
9
|
const entityValidationHelpers_1 = require("./entityValidationHelpers");
|
|
7
10
|
const actionBatchPack_1 = require("../../utility/actionBatchPack");
|
|
11
|
+
const beefForTxids_1 = require("../../utility/beefForTxids");
|
|
12
|
+
const syncChunkResponseRetryLimit = 4;
|
|
13
|
+
const minimumSyncChunkRoughSize = 64 * 1024;
|
|
14
|
+
function isSyncChunkResponseTooLarge(error) {
|
|
15
|
+
return error instanceof Error && /WalletStorageClient rpcCall: network error 413(?:\s|$)/.test(error.message);
|
|
16
|
+
}
|
|
17
|
+
function hasControlCharacter(value) {
|
|
18
|
+
return Array.from(value).some(character => {
|
|
19
|
+
const point = character.codePointAt(0);
|
|
20
|
+
return point <= 0x1f || (point >= 0x7f && point <= 0x9f);
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
function isLoopbackStorageHost(hostname) {
|
|
24
|
+
const normalized = hostname.toLowerCase();
|
|
25
|
+
return (normalized === 'localhost' ||
|
|
26
|
+
normalized === '127.0.0.1' ||
|
|
27
|
+
normalized === '[::1]' ||
|
|
28
|
+
normalized.endsWith('.localhost'));
|
|
29
|
+
}
|
|
30
|
+
function normalizeStorageEndpointUrl(endpointUrl) {
|
|
31
|
+
if (typeof endpointUrl !== 'string' ||
|
|
32
|
+
endpointUrl !== endpointUrl.trim() ||
|
|
33
|
+
endpointUrl.length > 8192 ||
|
|
34
|
+
hasControlCharacter(endpointUrl)) {
|
|
35
|
+
throw new TypeError('Wallet storage endpoint must be an exact bounded URL.');
|
|
36
|
+
}
|
|
37
|
+
let parsed;
|
|
38
|
+
try {
|
|
39
|
+
parsed = new URL(endpointUrl);
|
|
40
|
+
}
|
|
41
|
+
catch {
|
|
42
|
+
throw new TypeError('Wallet storage endpoint must be an absolute URL.');
|
|
43
|
+
}
|
|
44
|
+
if (parsed.username !== '' || parsed.password !== '' || parsed.search !== '' || parsed.hash !== '') {
|
|
45
|
+
throw new TypeError('Wallet storage endpoint cannot include credentials, query, or fragment.');
|
|
46
|
+
}
|
|
47
|
+
if (parsed.protocol !== 'https:' && !(parsed.protocol === 'http:' && isLoopbackStorageHost(parsed.hostname))) {
|
|
48
|
+
throw new TypeError('Wallet storage endpoint requires HTTPS except on localhost.');
|
|
49
|
+
}
|
|
50
|
+
// Preserve the caller's path spelling because endpoint URLs are also
|
|
51
|
+
// surfaced through WalletStorageManager. Parsing above is the security
|
|
52
|
+
// boundary; canonicalizing here would be an unrelated observable change.
|
|
53
|
+
return endpointUrl;
|
|
54
|
+
}
|
|
55
|
+
function normalizeServerIdentityKey(value) {
|
|
56
|
+
if (typeof value !== 'string' || !/^(?:02|03)[0-9a-f]{64}$/.test(value)) {
|
|
57
|
+
throw new TypeError('Wallet storage server identity key must be canonical.');
|
|
58
|
+
}
|
|
59
|
+
try {
|
|
60
|
+
if (sdk_1.PublicKey.fromString(value).toString() !== value)
|
|
61
|
+
throw new Error();
|
|
62
|
+
}
|
|
63
|
+
catch {
|
|
64
|
+
throw new TypeError('Wallet storage server identity key must be canonical.');
|
|
65
|
+
}
|
|
66
|
+
return value;
|
|
67
|
+
}
|
|
68
|
+
function normalizeStorageIdentityKey(value) {
|
|
69
|
+
// Despite the historical "key" name, existing stores use both public keys
|
|
70
|
+
// and opaque identifiers, including legacy 32-byte and current 33-byte
|
|
71
|
+
// random values. Preserve that contract while enforcing the schema's
|
|
72
|
+
// bounded, non-control identifier domain.
|
|
73
|
+
if (typeof value !== 'string' || value.length < 1 || value.length > 130 || hasControlCharacter(value)) {
|
|
74
|
+
throw new TypeError('Wallet storage identity must be an exact bounded identifier.');
|
|
75
|
+
}
|
|
76
|
+
return value;
|
|
77
|
+
}
|
|
78
|
+
function validateRemoteStorageSettings(value) {
|
|
79
|
+
if (value == null || typeof value !== 'object' || Array.isArray(value)) {
|
|
80
|
+
throw new Error('Wallet storage returned invalid settings.');
|
|
81
|
+
}
|
|
82
|
+
const prototype = Object.getPrototypeOf(value);
|
|
83
|
+
const properties = Object.getOwnPropertyDescriptors(value);
|
|
84
|
+
if ((prototype !== Object.prototype && prototype !== null) ||
|
|
85
|
+
Object.getOwnPropertySymbols(value).length !== 0 ||
|
|
86
|
+
Object.values(properties).some(property => property.get != null || property.set != null)) {
|
|
87
|
+
throw new Error('Wallet storage returned invalid settings.');
|
|
88
|
+
}
|
|
89
|
+
normalizeStorageIdentityKey(properties.storageIdentityKey?.value);
|
|
90
|
+
const storageName = properties.storageName?.value;
|
|
91
|
+
if (storageName !== undefined &&
|
|
92
|
+
(typeof storageName !== 'string' ||
|
|
93
|
+
storageName.length < 1 ||
|
|
94
|
+
storageName.length > 255 ||
|
|
95
|
+
hasControlCharacter(storageName))) {
|
|
96
|
+
throw new Error('Wallet storage returned invalid settings.');
|
|
97
|
+
}
|
|
98
|
+
const chain = properties.chain?.value;
|
|
99
|
+
if (chain !== undefined && (typeof chain !== 'string' || !['main', 'test', 'stn', 'ttn', 'tstn'].includes(chain))) {
|
|
100
|
+
throw new Error('Wallet storage returned invalid settings.');
|
|
101
|
+
}
|
|
102
|
+
const dbtype = properties.dbtype?.value;
|
|
103
|
+
if (dbtype !== undefined &&
|
|
104
|
+
(typeof dbtype !== 'string' || !['SQLite', 'MySQL', 'Postgres', 'IndexedDB'].includes(dbtype))) {
|
|
105
|
+
throw new Error('Wallet storage returned invalid settings.');
|
|
106
|
+
}
|
|
107
|
+
const maxOutputScript = properties.maxOutputScript?.value;
|
|
108
|
+
if (maxOutputScript !== undefined &&
|
|
109
|
+
(!Number.isSafeInteger(maxOutputScript) || maxOutputScript < 0 || maxOutputScript > 16 * 1024 * 1024)) {
|
|
110
|
+
throw new Error('Wallet storage returned invalid settings.');
|
|
111
|
+
}
|
|
112
|
+
for (const key of ['created_at', 'updated_at']) {
|
|
113
|
+
const date = properties[key]?.value;
|
|
114
|
+
if (date !== undefined && !(date instanceof Date) && !(typeof date === 'string' || typeof date === 'number')) {
|
|
115
|
+
throw new Error('Wallet storage returned invalid settings.');
|
|
116
|
+
}
|
|
117
|
+
if (date !== undefined && !Number.isFinite(new Date(date).getTime())) {
|
|
118
|
+
throw new Error('Wallet storage returned invalid settings.');
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
if (properties.syncCheckpointVersion != null && properties.syncCheckpointVersion.value !== 1) {
|
|
122
|
+
throw new Error('Wallet storage returned invalid settings.');
|
|
123
|
+
}
|
|
124
|
+
return value;
|
|
125
|
+
}
|
|
8
126
|
/**
|
|
9
127
|
* Abstract base class shared by `StorageClient` and `StorageMobile`.
|
|
10
128
|
*
|
|
@@ -19,13 +137,35 @@ class StorageClientBase {
|
|
|
19
137
|
serverSupportsBinary = false;
|
|
20
138
|
binaryRequests;
|
|
21
139
|
telemetry;
|
|
140
|
+
authenticatedServerIdentityKey;
|
|
141
|
+
expectedStorageIdentityKey;
|
|
142
|
+
syncChunkRoughSizeLimit;
|
|
143
|
+
/** Optional progress/cancellation hook for a bounded transfer; never receives wallet contents. */
|
|
144
|
+
onSyncTransferProgress;
|
|
22
145
|
// Track ephemeral (in-memory) "settings" if you wish to align with isAvailable() checks
|
|
23
146
|
settings;
|
|
24
147
|
constructor(wallet, endpointUrl, options = {}) {
|
|
25
148
|
this.authClient = new sdk_1.AuthFetch(wallet);
|
|
26
|
-
this.endpointUrl = endpointUrl;
|
|
149
|
+
this.endpointUrl = normalizeStorageEndpointUrl(endpointUrl);
|
|
27
150
|
this.binaryRequests = options.binaryRequests === true;
|
|
28
151
|
this.telemetry = new sdk_1.Telemetry(options.telemetry);
|
|
152
|
+
this.authenticatedServerIdentityKey =
|
|
153
|
+
options.serverIdentityKey === undefined ? undefined : normalizeServerIdentityKey(options.serverIdentityKey);
|
|
154
|
+
this.expectedStorageIdentityKey =
|
|
155
|
+
options.storageIdentityKey === undefined ? undefined : normalizeStorageIdentityKey(options.storageIdentityKey);
|
|
156
|
+
}
|
|
157
|
+
async authenticatedFetch(url, config) {
|
|
158
|
+
const response = await this.authClient.fetch(url, config);
|
|
159
|
+
const authenticatedIdentityKey = response.headers.get('x-bsv-auth-identity-key');
|
|
160
|
+
if (authenticatedIdentityKey == null) {
|
|
161
|
+
throw new Error('Wallet storage response was not mutually authenticated.');
|
|
162
|
+
}
|
|
163
|
+
const identityKey = normalizeServerIdentityKey(authenticatedIdentityKey);
|
|
164
|
+
if (this.authenticatedServerIdentityKey !== undefined && identityKey !== this.authenticatedServerIdentityKey) {
|
|
165
|
+
throw new Error('Wallet storage authenticated server identity changed.');
|
|
166
|
+
}
|
|
167
|
+
this.authenticatedServerIdentityKey = identityKey;
|
|
168
|
+
return response;
|
|
29
169
|
}
|
|
30
170
|
async traceRpcCall(method, params, callback) {
|
|
31
171
|
if (!this.telemetry.enabled)
|
|
@@ -61,6 +201,12 @@ class StorageClientBase {
|
|
|
61
201
|
isStorageProvider() {
|
|
62
202
|
return false;
|
|
63
203
|
}
|
|
204
|
+
nextRequestId() {
|
|
205
|
+
if (!Number.isSafeInteger(this.nextId) || this.nextId < 1) {
|
|
206
|
+
throw new Error('Wallet storage request identifier space exhausted.');
|
|
207
|
+
}
|
|
208
|
+
return this.nextId++;
|
|
209
|
+
}
|
|
64
210
|
/**
|
|
65
211
|
* @returns true once storage `TableSettings` have been retreived from remote storage.
|
|
66
212
|
*/
|
|
@@ -84,7 +230,15 @@ class StorageClientBase {
|
|
|
84
230
|
* @returns remote storage `TableSettings`
|
|
85
231
|
*/
|
|
86
232
|
async makeAvailable() {
|
|
87
|
-
this.settings
|
|
233
|
+
if (this.settings != null)
|
|
234
|
+
return this.settings;
|
|
235
|
+
const settings = validateRemoteStorageSettings(await this.rpcCall('makeAvailable', []));
|
|
236
|
+
const descriptor = Object.getOwnPropertyDescriptor(settings, 'storageIdentityKey');
|
|
237
|
+
const storageIdentityKey = normalizeStorageIdentityKey(descriptor != null && 'value' in descriptor ? descriptor.value : undefined);
|
|
238
|
+
if (this.expectedStorageIdentityKey !== undefined && storageIdentityKey !== this.expectedStorageIdentityKey) {
|
|
239
|
+
throw new Error('Wallet storage settings identity does not match the configured storage identity.');
|
|
240
|
+
}
|
|
241
|
+
this.settings = settings;
|
|
88
242
|
return this.settings;
|
|
89
243
|
}
|
|
90
244
|
/// ///////////////////////////////////////////////////////////////////////////
|
|
@@ -146,6 +300,34 @@ class StorageClientBase {
|
|
|
146
300
|
* @returns `StorageCreateActionResults` supporting additional wallet processing to yield `createAction` results.
|
|
147
301
|
*/
|
|
148
302
|
async createAction(auth, args) {
|
|
303
|
+
if (args.inputBEEF != null) {
|
|
304
|
+
if (args.inputs.length === 0) {
|
|
305
|
+
args = {
|
|
306
|
+
...args,
|
|
307
|
+
inputBEEF: undefined
|
|
308
|
+
};
|
|
309
|
+
}
|
|
310
|
+
else {
|
|
311
|
+
let source;
|
|
312
|
+
try {
|
|
313
|
+
source = sdk_1.Beef.fromBinaryStrict(args.inputBEEF);
|
|
314
|
+
}
|
|
315
|
+
catch {
|
|
316
|
+
// Forward malformed proof data so the server preserves its established
|
|
317
|
+
// validation error contract.
|
|
318
|
+
source = undefined;
|
|
319
|
+
}
|
|
320
|
+
if (source != null) {
|
|
321
|
+
const pruned = (0, beefForTxids_1.pruneBeefForTxids)(source, args.inputs.map(input => input.outpoint.txid));
|
|
322
|
+
if (pruned != null) {
|
|
323
|
+
args = {
|
|
324
|
+
...args,
|
|
325
|
+
inputBEEF: pruned.toBinary()
|
|
326
|
+
};
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
}
|
|
149
331
|
return await this.rpcCall('createAction', [auth, args]);
|
|
150
332
|
}
|
|
151
333
|
/**
|
|
@@ -161,6 +343,15 @@ class StorageClientBase {
|
|
|
161
343
|
async processAction(auth, args) {
|
|
162
344
|
return await this.rpcCall('processAction', [auth, args]);
|
|
163
345
|
}
|
|
346
|
+
async prepareNoSendExpiry(auth, args) {
|
|
347
|
+
return await this.rpcCall('prepareNoSendExpiry', [auth, args]);
|
|
348
|
+
}
|
|
349
|
+
async activateNoSendExpiry(auth, args) {
|
|
350
|
+
return await this.rpcCall('activateNoSendExpiry', [auth, args]);
|
|
351
|
+
}
|
|
352
|
+
async armNoSendExpiry(auth, args) {
|
|
353
|
+
await this.rpcCall('armNoSendExpiry', [auth, args]);
|
|
354
|
+
}
|
|
164
355
|
async getCapabilities() {
|
|
165
356
|
return await this.rpcCall('getCapabilities', []);
|
|
166
357
|
}
|
|
@@ -173,6 +364,9 @@ class StorageClientBase {
|
|
|
173
364
|
async renewActionBatch(auth, batchId) {
|
|
174
365
|
return await this.rpcCall('renewActionBatch', [auth, batchId]);
|
|
175
366
|
}
|
|
367
|
+
async resumeActionBatch(auth, args) {
|
|
368
|
+
return await this.rpcCall('resumeActionBatch', [auth, args]);
|
|
369
|
+
}
|
|
176
370
|
async prepareActionBatchCommit(auth, manifest) {
|
|
177
371
|
return await this.rpcCall('prepareActionBatchCommit', [auth, manifest]);
|
|
178
372
|
}
|
|
@@ -180,14 +374,13 @@ class StorageClientBase {
|
|
|
180
374
|
const baseUrl = this.endpointUrl.endsWith('/') ? this.endpointUrl.slice(0, -1) : this.endpointUrl;
|
|
181
375
|
const url = `${baseUrl}/action-batch/${encodeURIComponent(args.batchId)}/blob/${encodeURIComponent(args.digest)}`;
|
|
182
376
|
const bytes = args.bytes instanceof Uint8Array ? args.bytes : Uint8Array.from(args.bytes);
|
|
183
|
-
const response = await this.
|
|
377
|
+
const response = await this.authenticatedFetch(url, {
|
|
184
378
|
method: 'PUT',
|
|
185
379
|
headers: { 'Content-Type': 'application/octet-stream' },
|
|
186
380
|
body: bytes
|
|
187
381
|
});
|
|
188
382
|
if (!response.ok) {
|
|
189
|
-
|
|
190
|
-
throw new Error(`WalletStorageClient putActionBatchBlob: network error ${response.status} ${response.statusText}: ${details}`);
|
|
383
|
+
throw new Error(`WalletStorageClient putActionBatchBlob: network error ${response.status}`);
|
|
191
384
|
}
|
|
192
385
|
}
|
|
193
386
|
async putActionBatchPack(_auth, args) {
|
|
@@ -202,7 +395,7 @@ class StorageClientBase {
|
|
|
202
395
|
}
|
|
203
396
|
const baseUrl = this.endpointUrl.endsWith('/') ? this.endpointUrl.slice(0, -1) : this.endpointUrl;
|
|
204
397
|
const url = `${baseUrl}/action-batch/${encodeURIComponent(args.batchId)}/pack`;
|
|
205
|
-
const response = await this.
|
|
398
|
+
const response = await this.authenticatedFetch(url, {
|
|
206
399
|
method: 'PUT',
|
|
207
400
|
headers: {
|
|
208
401
|
'Content-Type': 'application/octet-stream',
|
|
@@ -211,8 +404,7 @@ class StorageClientBase {
|
|
|
211
404
|
body
|
|
212
405
|
});
|
|
213
406
|
if (!response.ok) {
|
|
214
|
-
|
|
215
|
-
throw new Error(`WalletStorageClient putActionBatchPack: network error ${response.status} ${response.statusText}: ${details}`);
|
|
407
|
+
throw new Error(`WalletStorageClient putActionBatchPack: network error ${response.status}`);
|
|
216
408
|
}
|
|
217
409
|
}
|
|
218
410
|
async commitActionBatch(auth, manifest) {
|
|
@@ -243,6 +435,15 @@ class StorageClientBase {
|
|
|
243
435
|
async findOrInsertUser(identityKey) {
|
|
244
436
|
return await this.rpcCall('findOrInsertUser', [identityKey]);
|
|
245
437
|
}
|
|
438
|
+
/** Read compact progress only when the provider advertises support. */
|
|
439
|
+
async getSyncCheckpoint(auth, storageIdentityKey, storageName) {
|
|
440
|
+
// Settings are already exchanged with legacy providers. Only an advertised
|
|
441
|
+
// capability enables this RPC; transport and authentication failures propagate.
|
|
442
|
+
if ((await this.makeAvailable()).syncCheckpointVersion !== 1)
|
|
443
|
+
return undefined;
|
|
444
|
+
const checkpoint = await this.rpcCall('getSyncCheckpoint', [auth, storageIdentityKey, storageName]);
|
|
445
|
+
return (0, syncCheckpoint_1.validateSyncCheckpoint)(checkpoint);
|
|
446
|
+
}
|
|
246
447
|
/**
|
|
247
448
|
* Used to both find and insert a `TableSyncState` record for the user to track wallet data replication across storage providers.
|
|
248
449
|
* @param auth Identifies client by identity key and the storage identity key of their currently active storage.
|
|
@@ -406,7 +607,17 @@ class StorageClientBase {
|
|
|
406
607
|
* @returns whether processing is done, counts of inserts and udpates, and related progress tracking properties.
|
|
407
608
|
*/
|
|
408
609
|
async processSyncChunk(args, chunk) {
|
|
409
|
-
const
|
|
610
|
+
const wireChunk = this.binaryRequests && this.serverSupportsBinary ? (0, syncChunkBinary_1.syncChunkBinary)(chunk) : chunk;
|
|
611
|
+
const capabilities = this.syncTransferCapabilities();
|
|
612
|
+
// Keep ordinary pages on the existing RPC. Only an oversized encoded payload uses staging.
|
|
613
|
+
const bytes = capabilities == null ? undefined : (0, SyncTransfer_1.encodeSyncTransfer)({ args, chunk: (0, syncChunkBinary_1.syncChunkBinary)(chunk) });
|
|
614
|
+
// Legacy numeric byte arrays can require four JSON characters per byte.
|
|
615
|
+
const expansion = this.binaryRequests && this.serverSupportsBinary ? 1 : 4;
|
|
616
|
+
const r = bytes != null && bytes.length * expansion > (capabilities.inlineBytes ?? 6 * 1024 * 1024)
|
|
617
|
+
? await this.uploadSyncTransfer(args.identityKey, bytes, capabilities)
|
|
618
|
+
: await this.rpcCall('processSyncChunk', [args, wireChunk]);
|
|
619
|
+
if (r.nextCheckpoint != null)
|
|
620
|
+
r.nextCheckpoint = (0, syncCheckpoint_1.validateSyncCheckpoint)(r.nextCheckpoint, args);
|
|
410
621
|
return r;
|
|
411
622
|
}
|
|
412
623
|
/**
|
|
@@ -419,9 +630,161 @@ class StorageClientBase {
|
|
|
419
630
|
* @returns the next "chunk" of replication data
|
|
420
631
|
*/
|
|
421
632
|
async getSyncChunk(args) {
|
|
633
|
+
const transfer = this.syncTransferCapabilities();
|
|
634
|
+
let requestArgs = { ...args, ...(transfer == null ? {} : { syncTransferVersion: 1 }) };
|
|
635
|
+
if (this.syncChunkRoughSizeLimit != null) {
|
|
636
|
+
requestArgs.maxRoughSize = Math.min(requestArgs.maxRoughSize, this.syncChunkRoughSizeLimit);
|
|
637
|
+
}
|
|
638
|
+
for (let retries = 0;; retries++) {
|
|
639
|
+
try {
|
|
640
|
+
return await this.readSyncChunkResponse(requestArgs, args.maxRoughSize, transfer);
|
|
641
|
+
}
|
|
642
|
+
catch (error) {
|
|
643
|
+
if (!isSyncChunkResponseTooLarge(error))
|
|
644
|
+
throw error;
|
|
645
|
+
const smaller = this.smallerSyncRequest(requestArgs, retries);
|
|
646
|
+
if (smaller != null) {
|
|
647
|
+
requestArgs = smaller;
|
|
648
|
+
continue;
|
|
649
|
+
}
|
|
650
|
+
if (transfer == null)
|
|
651
|
+
throw error;
|
|
652
|
+
return await this.downloadSyncTransfer(requestArgs, transfer);
|
|
653
|
+
}
|
|
654
|
+
}
|
|
655
|
+
}
|
|
656
|
+
async readSyncChunkResponse(args, originalMaxRoughSize, transfer) {
|
|
422
657
|
const r = await this.rpcCall('getSyncChunk', [args]);
|
|
658
|
+
if ('syncTransfer' in r) {
|
|
659
|
+
if (transfer == null || Object.keys(r).length !== 1)
|
|
660
|
+
throw new Error('Unexpected wallet sync transfer response');
|
|
661
|
+
return await this.downloadSyncTransfer(args, transfer, r.syncTransfer);
|
|
662
|
+
}
|
|
663
|
+
if (args.maxRoughSize < originalMaxRoughSize) {
|
|
664
|
+
this.syncChunkRoughSizeLimit = args.maxRoughSize;
|
|
665
|
+
}
|
|
423
666
|
return (0, entityValidationHelpers_1.validateSyncChunkEntities)(r);
|
|
424
667
|
}
|
|
668
|
+
requestUsesBinary(method) {
|
|
669
|
+
const transferPart = method === 'writeSyncTransferPart' && this.settings?.syncTransfer?.version === 1;
|
|
670
|
+
return (this.binaryRequests || transferPart) && this.serverSupportsBinary;
|
|
671
|
+
}
|
|
672
|
+
rpcResponseError(response) {
|
|
673
|
+
const error = new Error(`WalletStorageClient rpcCall: network error ${response.status}`);
|
|
674
|
+
if (response.status !== 429)
|
|
675
|
+
return error;
|
|
676
|
+
const after = response.headers.get('retry-after');
|
|
677
|
+
let delay = 1000;
|
|
678
|
+
if (after != null)
|
|
679
|
+
delay = /^\d+$/.test(after) ? Number(after) * 1000 : Date.parse(after) - Date.now();
|
|
680
|
+
return Object.assign(error, { retryAfterMs: delay });
|
|
681
|
+
}
|
|
682
|
+
smallerSyncRequest(args, retries) {
|
|
683
|
+
const nextRoughSize = Math.max(minimumSyncChunkRoughSize, Math.floor(args.maxRoughSize / 2));
|
|
684
|
+
if (retries < syncChunkResponseRetryLimit && nextRoughSize < args.maxRoughSize) {
|
|
685
|
+
return { ...args, maxRoughSize: nextRoughSize };
|
|
686
|
+
}
|
|
687
|
+
if (args.maxItems === 1)
|
|
688
|
+
return undefined;
|
|
689
|
+
return { ...args, maxItems: 1, maxRoughSize: minimumSyncChunkRoughSize };
|
|
690
|
+
}
|
|
691
|
+
syncTransferCapabilities() {
|
|
692
|
+
const value = this.settings?.syncTransfer;
|
|
693
|
+
return value == null ? undefined : (0, SyncTransfer_1.validateSyncTransferCapabilities)(value);
|
|
694
|
+
}
|
|
695
|
+
syncTransferRetryDelay(error, attempt) {
|
|
696
|
+
const message = error instanceof Error ? error.message : '';
|
|
697
|
+
if (attempt >= 2 ||
|
|
698
|
+
!/network error (?:429|502|503|504)|timed out waiting for authenticated response|fetch failed|Failed to fetch/i.test(message))
|
|
699
|
+
return undefined;
|
|
700
|
+
if (!/network error 429/.test(message))
|
|
701
|
+
return 250 * 2 ** attempt;
|
|
702
|
+
const cause = error instanceof Error && error.cause instanceof Error ? error.cause : error;
|
|
703
|
+
const retryAfter = cause != null && typeof cause === 'object' ? Reflect.get(cause, 'retryAfterMs') : undefined;
|
|
704
|
+
const delay = retryAfter ?? 1000;
|
|
705
|
+
return Number.isFinite(delay) && delay >= 0 && delay <= 60_000 ? delay : undefined;
|
|
706
|
+
}
|
|
707
|
+
async transferPartCall(method, input) {
|
|
708
|
+
for (let attempt = 0;; attempt++) {
|
|
709
|
+
try {
|
|
710
|
+
return await this.rpcCall(method, [input]);
|
|
711
|
+
}
|
|
712
|
+
catch (error) {
|
|
713
|
+
// Only immutable reads and identical staged part writes may be retried here. Never commit.
|
|
714
|
+
const delay = this.syncTransferRetryDelay(error, attempt);
|
|
715
|
+
if (delay == null)
|
|
716
|
+
throw error;
|
|
717
|
+
await new Promise(resolve => setTimeout(resolve, delay));
|
|
718
|
+
}
|
|
719
|
+
}
|
|
720
|
+
}
|
|
721
|
+
async releaseSyncTransfer(identityKey, transferId) {
|
|
722
|
+
try {
|
|
723
|
+
await this.rpcCall('releaseSyncTransfer', [{ identityKey, transferId }]);
|
|
724
|
+
}
|
|
725
|
+
catch {
|
|
726
|
+
// Expiry reclaims staging if the connection is gone. Wallet records are never removed.
|
|
727
|
+
}
|
|
728
|
+
}
|
|
729
|
+
async downloadSyncTransfer(args, capabilities, suppliedManifest) {
|
|
730
|
+
const manifest = (0, SyncTransfer_1.validateSyncTransferManifest)(suppliedManifest ??
|
|
731
|
+
(await this.transferPartCall('beginReadSyncTransfer', {
|
|
732
|
+
identityKey: args.identityKey,
|
|
733
|
+
args
|
|
734
|
+
})), capabilities);
|
|
735
|
+
try {
|
|
736
|
+
const chunk = (await (0, SyncTransfer_1.receiveSyncTransfer)(manifest, async (offset) => {
|
|
737
|
+
this.onSyncTransferProgress?.({ direction: 'read', bytes: offset, totalBytes: manifest.totalBytes });
|
|
738
|
+
return await this.transferPartCall('readSyncTransferPart', {
|
|
739
|
+
identityKey: args.identityKey,
|
|
740
|
+
transferId: manifest.transferId,
|
|
741
|
+
offset
|
|
742
|
+
});
|
|
743
|
+
}));
|
|
744
|
+
this.onSyncTransferProgress?.({ direction: 'read', bytes: manifest.totalBytes, totalBytes: manifest.totalBytes });
|
|
745
|
+
if (chunk?.userIdentityKey !== args.identityKey ||
|
|
746
|
+
chunk.fromStorageIdentityKey !== args.fromStorageIdentityKey ||
|
|
747
|
+
chunk.toStorageIdentityKey !== args.toStorageIdentityKey)
|
|
748
|
+
throw new Error('Wallet sync transfer identities changed');
|
|
749
|
+
return (0, entityValidationHelpers_1.validateSyncChunkEntities)(chunk);
|
|
750
|
+
}
|
|
751
|
+
finally {
|
|
752
|
+
await this.releaseSyncTransfer(args.identityKey, manifest.transferId);
|
|
753
|
+
}
|
|
754
|
+
}
|
|
755
|
+
async uploadSyncTransfer(identityKey, bytes, capabilities) {
|
|
756
|
+
if (bytes.length > capabilities.maxBytes)
|
|
757
|
+
throw new RangeError('Wallet sync record exceeds the negotiated transfer size limit');
|
|
758
|
+
const response = await this.transferPartCall('beginWriteSyncTransfer', { identityKey, digest: (0, SyncTransfer_1.syncTransferDigest)(bytes), totalBytes: bytes.length });
|
|
759
|
+
const manifest = (0, SyncTransfer_1.validateSyncTransferManifest)(response, capabilities);
|
|
760
|
+
if (manifest.digest !== (0, SyncTransfer_1.syncTransferDigest)(bytes) ||
|
|
761
|
+
manifest.totalBytes !== bytes.length ||
|
|
762
|
+
!Number.isSafeInteger(response.receivedBytes) ||
|
|
763
|
+
response.receivedBytes < 0 ||
|
|
764
|
+
response.receivedBytes > bytes.length ||
|
|
765
|
+
(response.receivedBytes !== bytes.length && response.receivedBytes % manifest.partBytes !== 0)) {
|
|
766
|
+
throw new Error('Invalid wallet sync upload checkpoint');
|
|
767
|
+
}
|
|
768
|
+
for (let offset = response.receivedBytes; offset < bytes.length;) {
|
|
769
|
+
this.onSyncTransferProgress?.({ direction: 'write', bytes: offset, totalBytes: bytes.length });
|
|
770
|
+
const part = bytes.subarray(offset, offset + manifest.partBytes);
|
|
771
|
+
const next = await this.transferPartCall('writeSyncTransferPart', {
|
|
772
|
+
identityKey,
|
|
773
|
+
transferId: manifest.transferId,
|
|
774
|
+
offset,
|
|
775
|
+
bytes: part
|
|
776
|
+
});
|
|
777
|
+
if (next !== offset + part.length)
|
|
778
|
+
throw new Error('Invalid wallet sync upload acknowledgement');
|
|
779
|
+
offset = next;
|
|
780
|
+
}
|
|
781
|
+
// An uncertain commit is surfaced. The next sync starts from the writer's durable checkpoint.
|
|
782
|
+
const result = await this.rpcCall('commitSyncTransfer', [
|
|
783
|
+
{ identityKey, transferId: manifest.transferId }
|
|
784
|
+
]);
|
|
785
|
+
await this.releaseSyncTransfer(identityKey, manifest.transferId);
|
|
786
|
+
return result;
|
|
787
|
+
}
|
|
425
788
|
/**
|
|
426
789
|
* Handles the data received when a new transaction proof is found in response to an outstanding request for proof data:
|
|
427
790
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StorageClientBase.js","sourceRoot":"","sources":["../../../../src/storage/remoting/StorageClientBase.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"StorageClientBase.js","sourceRoot":"","sources":["../../../../src/storage/remoting/StorageClientBase.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,11 @@ import { StorageClientBase, type StorageClientOptions } from './StorageClientBas
|
|
|
6
6
|
*
|
|
7
7
|
* Internally, it uses JSON-RPC over HTTPS to make requests of a remote server.
|
|
8
8
|
* Typically this server uses the `StorageServer` class to implement the service.
|
|
9
|
+
* Responses must complete mutual authentication. By default, the first authenticated
|
|
10
|
+
* server identity is trusted for this client instance; callers can instead supply
|
|
11
|
+
* `serverIdentityKey` as an independently validated pin. The distinct storage-provider
|
|
12
|
+
* identity advertised by the authenticated `makeAvailable` response is authoritative
|
|
13
|
+
* by default; callers can independently pin it with `storageIdentityKey`.
|
|
9
14
|
*
|
|
10
15
|
* This mobile variant omits the full logger support present in `StorageClient` to keep
|
|
11
16
|
* the bundle lean for mobile / browser environments.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StorageMobile.d.ts","sourceRoot":"","sources":["../../../../src/storage/remoting/StorageMobile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"StorageMobile.d.ts","sourceRoot":"","sources":["../../../../src/storage/remoting/StorageMobile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAE1C,OAAO,EAAE,iBAAiB,EAAE,KAAK,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAUlF;;;;;;;;;;;;;;;;GAgBG;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,CAwExE;CACF"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.StorageClient = void 0;
|
|
4
|
+
const WalletErrorFromJson_1 = require("../../sdk/WalletErrorFromJson");
|
|
4
5
|
const StorageClientBase_1 = require("./StorageClientBase");
|
|
5
6
|
const BinaryJson_1 = require("./BinaryJson");
|
|
6
7
|
/**
|
|
@@ -9,6 +10,11 @@ const BinaryJson_1 = require("./BinaryJson");
|
|
|
9
10
|
*
|
|
10
11
|
* Internally, it uses JSON-RPC over HTTPS to make requests of a remote server.
|
|
11
12
|
* Typically this server uses the `StorageServer` class to implement the service.
|
|
13
|
+
* Responses must complete mutual authentication. By default, the first authenticated
|
|
14
|
+
* server identity is trusted for this client instance; callers can instead supply
|
|
15
|
+
* `serverIdentityKey` as an independently validated pin. The distinct storage-provider
|
|
16
|
+
* identity advertised by the authenticated `makeAvailable` response is authoritative
|
|
17
|
+
* by default; callers can independently pin it with `storageIdentityKey`.
|
|
12
18
|
*
|
|
13
19
|
* This mobile variant omits the full logger support present in `StorageClient` to keep
|
|
14
20
|
* the bundle lean for mobile / browser environments.
|
|
@@ -29,16 +35,16 @@ class StorageClient extends StorageClientBase_1.StorageClientBase {
|
|
|
29
35
|
*/
|
|
30
36
|
async rpcCall(method, params) {
|
|
31
37
|
return await this.traceRpcCall(method, params, async (rpcSpan) => {
|
|
32
|
-
const id = this.
|
|
38
|
+
const id = this.nextRequestId();
|
|
33
39
|
const body = {
|
|
34
40
|
jsonrpc: '2.0',
|
|
35
41
|
method,
|
|
36
42
|
params,
|
|
37
43
|
id
|
|
38
44
|
};
|
|
39
|
-
const requestUsesBinary = this.
|
|
45
|
+
const requestUsesBinary = this.requestUsesBinary(method);
|
|
40
46
|
const requestBody = await this.traceRpcStep('wallet.storage.request.serialize', rpcSpan, () => (0, BinaryJson_1.stringifyJsonRpc)(body, requestUsesBinary), { 'rpc.encoding': requestUsesBinary ? 'binary-json' : 'json' });
|
|
41
|
-
const response = await this.traceRpcStep('wallet.storage.http', rpcSpan, async () => await this.
|
|
47
|
+
const response = await this.traceRpcStep('wallet.storage.http', rpcSpan, async () => await this.authenticatedFetch(this.endpointUrl, {
|
|
42
48
|
method: 'POST',
|
|
43
49
|
headers: {
|
|
44
50
|
'Content-Type': 'application/json',
|
|
@@ -51,7 +57,7 @@ class StorageClient extends StorageClientBase_1.StorageClientBase {
|
|
|
51
57
|
'rpc.encoding': requestUsesBinary ? 'binary-json' : 'json'
|
|
52
58
|
});
|
|
53
59
|
if (!response.ok) {
|
|
54
|
-
throw
|
|
60
|
+
throw this.rpcResponseError(response);
|
|
55
61
|
}
|
|
56
62
|
const responseUsesBinary = response.headers.get(BinaryJson_1.BINARY_ENCODING_HEADER) === BinaryJson_1.BINARY_ENCODING;
|
|
57
63
|
if (responseUsesBinary)
|
|
@@ -60,16 +66,12 @@ class StorageClient extends StorageClientBase_1.StorageClientBase {
|
|
|
60
66
|
'http.response.status_code': response.status,
|
|
61
67
|
'rpc.encoding': responseUsesBinary ? 'binary-json' : 'json'
|
|
62
68
|
});
|
|
63
|
-
const json = await this.traceRpcStep('wallet.storage.response.parse', rpcSpan, () => (0, BinaryJson_1.parseJsonRpc)(responseText, responseUsesBinary), {
|
|
69
|
+
const json = await this.traceRpcStep('wallet.storage.response.parse', rpcSpan, () => (0, BinaryJson_1.validateJsonRpcResponse)((0, BinaryJson_1.parseJsonRpc)(responseText, responseUsesBinary), id), {
|
|
64
70
|
'rpc.encoding': responseUsesBinary ? 'binary-json' : 'json',
|
|
65
71
|
'response.size_bytes': responseText.length
|
|
66
72
|
});
|
|
67
|
-
if (json
|
|
68
|
-
|
|
69
|
-
const err = new Error(`RPC Error: ${message}`);
|
|
70
|
-
err.code = code;
|
|
71
|
-
err.data = data;
|
|
72
|
-
throw err;
|
|
73
|
+
if ('error' in json) {
|
|
74
|
+
throw (0, WalletErrorFromJson_1.WalletErrorFromJson)(json.error);
|
|
73
75
|
}
|
|
74
76
|
rpcSpan?.end({
|
|
75
77
|
attributes: {
|