@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
|
@@ -13,7 +13,28 @@ const parseTxScriptOffsets_1 = require("../../utility/parseTxScriptOffsets");
|
|
|
13
13
|
const utilityHelpers_noBuffer_1 = require("../../utility/utilityHelpers.noBuffer");
|
|
14
14
|
const WalletError_1 = require("../../sdk/WalletError");
|
|
15
15
|
const storageProviderHelpers_1 = require("../storageProviderHelpers");
|
|
16
|
+
const managedChange_1 = require("./managedChange");
|
|
17
|
+
const validatePostBeefResult_1 = require("../../services/validatePostBeefResult");
|
|
18
|
+
function normalizeProcessActionArgs(args) {
|
|
19
|
+
for (const property of ['isNewTx', 'isSendWith', 'isNoSend', 'isDelayed']) {
|
|
20
|
+
if (typeof args[property] !== 'boolean') {
|
|
21
|
+
throw new WERR_errors_1.WERR_INVALID_PARAMETER(property, 'a boolean');
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
const sendWith = (0, validatePostBeefResult_1.normalizePostTxids)(args.sendWith, 'sendWith', true);
|
|
25
|
+
if (args.isSendWith !== sendWith.length > 0) {
|
|
26
|
+
throw new WERR_errors_1.WERR_INVALID_PARAMETER('isSendWith', 'match whether sendWith contains transaction IDs');
|
|
27
|
+
}
|
|
28
|
+
if (args.isNewTx && sendWith.length >= validatePostBeefResult_1.MAX_POST_BEEF_TXIDS) {
|
|
29
|
+
throw new WERR_errors_1.WERR_INVALID_PARAMETER('sendWith', `at most ${validatePostBeefResult_1.MAX_POST_BEEF_TXIDS - 1} transaction IDs when the new transaction joins the broadcast set`);
|
|
30
|
+
}
|
|
31
|
+
if (args.isNewTx && typeof args.txid === 'string' && sendWith.includes(args.txid.toLowerCase())) {
|
|
32
|
+
throw new WERR_errors_1.WERR_INVALID_PARAMETER('sendWith', 'exclude the new transaction ID that storage appends');
|
|
33
|
+
}
|
|
34
|
+
return { ...args, sendWith };
|
|
35
|
+
}
|
|
16
36
|
async function processAction(storage, auth, args) {
|
|
37
|
+
args = normalizeProcessActionArgs(args);
|
|
17
38
|
if (!storage.telemetry.enabled)
|
|
18
39
|
return await processActionCore(storage, auth, args);
|
|
19
40
|
return await storage.telemetry.withSpan('wallet.storage.process_action', {
|
|
@@ -39,14 +60,21 @@ async function processActionCore(storage, auth, args, parent) {
|
|
|
39
60
|
sendWithResults: undefined
|
|
40
61
|
};
|
|
41
62
|
let req;
|
|
63
|
+
let prepareRootTxid;
|
|
42
64
|
const txidsOfReqsToShareWithWorld = [...args.sendWith];
|
|
43
65
|
if (args.isNewTx) {
|
|
44
|
-
const vargs = await traceProcessStep(storage, 'wallet.storage.process_action.validate', parent, async () => await validateCommitNewTxToStorageArgs(storage,
|
|
66
|
+
const vargs = await traceProcessStep(storage, 'wallet.storage.process_action.validate', parent, async () => await validateCommitNewTxToStorageArgs(storage, auth, args));
|
|
45
67
|
logger?.log('validated new tx updates to storage');
|
|
46
68
|
({ req } = await traceProcessStep(storage, 'wallet.storage.process_action.commit', parent, async () => await commitNewTxToStorage(storage, userId, vargs)));
|
|
47
69
|
logger?.log('committed new tx updates to storage ');
|
|
48
70
|
if (!req)
|
|
49
71
|
throw new WERR_errors_1.WERR_INTERNAL();
|
|
72
|
+
const preparedBeef = storage;
|
|
73
|
+
if (typeof preparedBeef.preparedBeefWritesEnabled === 'function' &&
|
|
74
|
+
preparedBeef.preparedBeefWritesEnabled.call(storage) &&
|
|
75
|
+
vargs.outputOutputs.some(managedChange_1.isManagedChangeOutput)) {
|
|
76
|
+
prepareRootTxid = req.txid;
|
|
77
|
+
}
|
|
50
78
|
// Add the new txid to sendWith unless there are no others to send and the noSend option is set.
|
|
51
79
|
if (args.isNoSend && !args.isSendWith) {
|
|
52
80
|
logger?.log(`noSend txid ${req.txid}`);
|
|
@@ -59,6 +87,15 @@ async function processActionCore(storage, auth, args, parent) {
|
|
|
59
87
|
const { swr, ndr } = await traceProcessStep(storage, 'wallet.storage.process_action.share', parent, async () => await shareReqsWithWorld(storage, userId, txidsOfReqsToShareWithWorld, args.isDelayed, undefined, logger));
|
|
60
88
|
r.sendWithResults = swr;
|
|
61
89
|
r.notDelayedResults = ndr;
|
|
90
|
+
// Prepare proof material for future spends only after all foreground
|
|
91
|
+
// processAction work has completed. The bounded coordinator starts later on
|
|
92
|
+
// the event loop and is never awaited by this request.
|
|
93
|
+
if (prepareRootTxid != null) {
|
|
94
|
+
const extension = storage;
|
|
95
|
+
if (typeof extension.enqueuePreparedBeef === 'function') {
|
|
96
|
+
extension.enqueuePreparedBeef.call(storage, { userId, rootTxids: [prepareRootTxid] });
|
|
97
|
+
}
|
|
98
|
+
}
|
|
62
99
|
logger?.groupEnd();
|
|
63
100
|
return r;
|
|
64
101
|
}
|
|
@@ -79,17 +116,22 @@ async function traceProcessStep(storage, name, parent, callback) {
|
|
|
79
116
|
* @param r Optional. Ignores txids and allows ProvenTxReqs and merged beef to be passed in.
|
|
80
117
|
*/
|
|
81
118
|
function classifyReqDetails(details, swr, readyToSendReqs) {
|
|
119
|
+
// `alreadySent` members do not need to be resubmitted, but every other
|
|
120
|
+
// member must be ready before any ready subset may be scheduled or posted.
|
|
121
|
+
// Otherwise a transient lookup failure silently partitions one atomic set.
|
|
122
|
+
const complete = details.every(detail => detail.status === 'alreadySent' || detail.status === 'readyToSend');
|
|
82
123
|
for (const getReq of details) {
|
|
83
124
|
let status = 'failed';
|
|
84
125
|
if (getReq.status === 'alreadySent') {
|
|
85
126
|
status = 'unproven';
|
|
86
127
|
}
|
|
87
|
-
else if (getReq.status === 'readyToSend') {
|
|
128
|
+
else if (getReq.status === 'readyToSend' && complete) {
|
|
88
129
|
status = 'sending';
|
|
89
130
|
readyToSendReqs.push(new EntityProvenTxReq_1.EntityProvenTxReq(getReq.req));
|
|
90
131
|
}
|
|
91
132
|
swr.push({ txid: getReq.txid, status });
|
|
92
133
|
}
|
|
134
|
+
return complete;
|
|
93
135
|
}
|
|
94
136
|
async function verifyMergedBeef(storage, r, readyToSendReqs, logger) {
|
|
95
137
|
if (readyToSendReqs.length === 0 || r.verified === true)
|
|
@@ -129,12 +171,14 @@ async function getReqDetailsForDelayedShare(storage, txids) {
|
|
|
129
171
|
}
|
|
130
172
|
catch (error_) {
|
|
131
173
|
const e = WalletError_1.WalletError.fromUnknown(error_);
|
|
174
|
+
d.status = 'error';
|
|
132
175
|
d.error = `${e.name}: ${e.message}`;
|
|
133
176
|
}
|
|
134
177
|
}
|
|
135
178
|
return r;
|
|
136
179
|
}
|
|
137
180
|
async function shareReqsWithWorld(storage, userId, txids, isDelayed, r, logger) {
|
|
181
|
+
txids = (0, validatePostBeefResult_1.normalizePostTxids)(txids, 'txids', true);
|
|
138
182
|
const swr = [];
|
|
139
183
|
const ndr = undefined;
|
|
140
184
|
if (r == null && txids.length < 1)
|
|
@@ -142,10 +186,12 @@ async function shareReqsWithWorld(storage, userId, txids, isDelayed, r, logger)
|
|
|
142
186
|
r ??= isDelayed
|
|
143
187
|
? await getReqDetailsForDelayedShare(storage, txids)
|
|
144
188
|
: await storage.getReqsAndBeefToShareWithWorld(txids, []);
|
|
189
|
+
(0, validatePostBeefResult_1.normalizePostTxids)(r.details.map(detail => detail.txid), 'details', true);
|
|
145
190
|
const readyToSendReqs = [];
|
|
146
|
-
classifyReqDetails(r.details, swr, readyToSendReqs)
|
|
191
|
+
if (!classifyReqDetails(r.details, swr, readyToSendReqs))
|
|
192
|
+
return { swr, ndr };
|
|
147
193
|
const readyToSendReqIds = readyToSendReqs.map(r => r.id);
|
|
148
|
-
const transactionIds = readyToSendReqs.flatMap(r => r.notify.transactionIds
|
|
194
|
+
const transactionIds = readyToSendReqs.flatMap(r => r.notify.transactionIds ?? []);
|
|
149
195
|
const batch = txids.length > 1 ? (0, utilityHelpers_1.randomBytesBase64)(16) : undefined;
|
|
150
196
|
if (isDelayed) {
|
|
151
197
|
// Delayed sends rebuild BEEF when the monitor sends the req. Do not fail a committed
|
|
@@ -173,8 +219,9 @@ async function shareReqsWithWorld(storage, userId, txids, isDelayed, r, logger)
|
|
|
173
219
|
function determineReqTxStatus(params) {
|
|
174
220
|
if (params.isNoSend && !params.isSendWith)
|
|
175
221
|
return { status: { req: 'nosend', tx: 'nosend' }, postStatus: undefined };
|
|
176
|
-
if (!params.isNoSend && params.isDelayed)
|
|
222
|
+
if (!params.isNoSend && params.isDelayed) {
|
|
177
223
|
return { status: { req: 'unsent', tx: 'unprocessed' }, postStatus: undefined };
|
|
224
|
+
}
|
|
178
225
|
if (!params.isNoSend && !params.isDelayed) {
|
|
179
226
|
return {
|
|
180
227
|
status: { req: 'unprocessed', tx: 'unprocessed' },
|
|
@@ -208,8 +255,9 @@ function buildOutputUpdates(storage, tx, vargs) {
|
|
|
208
255
|
vargs.outputUpdates.push({ id: o.outputId, update });
|
|
209
256
|
}
|
|
210
257
|
}
|
|
211
|
-
|
|
212
|
-
|
|
258
|
+
function parseProcessActionTransaction(params) {
|
|
259
|
+
const { reference, txid } = params;
|
|
260
|
+
if (!reference || !txid || params.rawTx == null) {
|
|
213
261
|
throw new WERR_errors_1.WERR_INVALID_OPERATION('One or more expected params are undefined.');
|
|
214
262
|
}
|
|
215
263
|
const rawTx = (0, utilityHelpers_noBuffer_1.asArray)(params.rawTx);
|
|
@@ -220,9 +268,52 @@ async function validateCommitNewTxToStorageArgs(storage, userId, params) {
|
|
|
220
268
|
catch {
|
|
221
269
|
throw new WERR_errors_1.WERR_INVALID_OPERATION('Parsing serialized transaction failed.');
|
|
222
270
|
}
|
|
223
|
-
if (
|
|
271
|
+
if (txid !== tx.id('hex')) {
|
|
224
272
|
throw new WERR_errors_1.WERR_INVALID_OPERATION("Hash of serialized transaction doesn't match expected txid");
|
|
225
273
|
}
|
|
274
|
+
return { reference, txid, rawTx, tx };
|
|
275
|
+
}
|
|
276
|
+
async function validateNoSendExpiryRelease(storage, auth, params, transaction) {
|
|
277
|
+
if (transaction.noSendExpiryState == null)
|
|
278
|
+
return;
|
|
279
|
+
if (auth.isActive !== true)
|
|
280
|
+
throw new WERR_errors_1.WERR_NOT_ACTIVE('BRC-177 requires the active storage provider');
|
|
281
|
+
if (!params.isNoSend || params.isSendWith) {
|
|
282
|
+
throw new WERR_errors_1.WERR_INVALID_OPERATION('BRC-177 protected actions must remain noSend and cannot use sendWith');
|
|
283
|
+
}
|
|
284
|
+
if (transaction.noSendExpiryState !== 'unsigned' || transaction.noSendExpiryReclaimRawTx == null) {
|
|
285
|
+
throw new WERR_errors_1.WERR_INVALID_OPERATION('BRC-177 protected action is not armed for signature release');
|
|
286
|
+
}
|
|
287
|
+
const deadline = (0, utilityHelpers_1.verifyInteger)(transaction.noSendExpiryDeadline);
|
|
288
|
+
const expired = transaction.noSendExpiryMode === 'blockheight'
|
|
289
|
+
? (await storage.getServices().getHeight()) >= deadline
|
|
290
|
+
: Math.floor(Date.now() / 1000) >= deadline;
|
|
291
|
+
if (expired)
|
|
292
|
+
throw new WERR_errors_1.WERR_INVALID_OPERATION('BRC-177 protected action has expired');
|
|
293
|
+
}
|
|
294
|
+
function validatePlannedTransaction(transaction) {
|
|
295
|
+
if (!transaction.isOutgoing)
|
|
296
|
+
throw new WERR_errors_1.WERR_INVALID_OPERATION('isOutgoing is not true');
|
|
297
|
+
if (transaction.inputBEEF == null)
|
|
298
|
+
throw new WERR_errors_1.WERR_INVALID_OPERATION();
|
|
299
|
+
if (transaction.status !== 'unsigned' && transaction.status !== 'unprocessed') {
|
|
300
|
+
throw new WERR_errors_1.WERR_INVALID_OPERATION(`invalid transaction status ${transaction.status}`);
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
function validateCommissionOutput(storage, tx, commissionRows) {
|
|
304
|
+
if (storage.commissionSatoshis <= 0)
|
|
305
|
+
return;
|
|
306
|
+
const commission = (0, utilityHelpers_1.verifyOneOrNone)(commissionRows);
|
|
307
|
+
if (commission == null)
|
|
308
|
+
throw new WERR_errors_1.WERR_INTERNAL();
|
|
309
|
+
const commissionValid = tx.outputs.some(output => output.satoshis === commission.satoshis && output.lockingScript.toHex() === (0, utilityHelpers_noBuffer_1.asString)(commission.lockingScript));
|
|
310
|
+
if (!commissionValid) {
|
|
311
|
+
throw new WERR_errors_1.WERR_INVALID_OPERATION('Transaction did not include an output to cover service fee.');
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
async function validateCommitNewTxToStorageArgs(storage, auth, params) {
|
|
315
|
+
const userId = (0, utilityHelpers_1.verifyId)(auth.userId);
|
|
316
|
+
const { reference, txid, rawTx, tx } = parseProcessActionTransaction(params);
|
|
226
317
|
const services = storage.getServices();
|
|
227
318
|
if (!(await services.nLockTimeIsFinal(tx))) {
|
|
228
319
|
throw new WERR_errors_1.WERR_INVALID_OPERATION(`This transaction is not final.
|
|
@@ -231,16 +322,10 @@ async function validateCommitNewTxToStorageArgs(storage, userId, params) {
|
|
|
231
322
|
}
|
|
232
323
|
const txScriptOffsets = (0, parseTxScriptOffsets_1.parseTxScriptOffsets)(rawTx);
|
|
233
324
|
const transaction = (0, utilityHelpers_1.verifyOne)(await storage.findTransactions({
|
|
234
|
-
partial: { userId, reference
|
|
325
|
+
partial: { userId, reference }
|
|
235
326
|
}));
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
if (transaction.inputBEEF == null)
|
|
239
|
-
throw new WERR_errors_1.WERR_INVALID_OPERATION();
|
|
240
|
-
// Transaction must have unsigned or unprocessed status
|
|
241
|
-
if (transaction.status !== 'unsigned' && transaction.status !== 'unprocessed') {
|
|
242
|
-
throw new WERR_errors_1.WERR_INVALID_OPERATION(`invalid transaction status ${transaction.status}`);
|
|
243
|
-
}
|
|
327
|
+
await validateNoSendExpiryRelease(storage, auth, params, transaction);
|
|
328
|
+
validatePlannedTransaction(transaction);
|
|
244
329
|
const transactionId = (0, utilityHelpers_1.verifyId)(transaction.transactionId);
|
|
245
330
|
// These reads are independent once the planned transaction is resolved.
|
|
246
331
|
// Running them together removes two network-database round trips from every
|
|
@@ -251,17 +336,8 @@ async function validateCommitNewTxToStorageArgs(storage, userId, params) {
|
|
|
251
336
|
? storage.findCommissions({ partial: { transactionId, userId } })
|
|
252
337
|
: Promise.resolve([])
|
|
253
338
|
]);
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
// A commission is required...
|
|
257
|
-
if (commission == null)
|
|
258
|
-
throw new WERR_errors_1.WERR_INTERNAL();
|
|
259
|
-
const commissionValid = tx.outputs.some(x => x.satoshis === commission.satoshis && x.lockingScript.toHex() === (0, utilityHelpers_noBuffer_1.asString)(commission.lockingScript));
|
|
260
|
-
if (!commissionValid) {
|
|
261
|
-
throw new WERR_errors_1.WERR_INVALID_OPERATION('Transaction did not include an output to cover service fee.');
|
|
262
|
-
}
|
|
263
|
-
}
|
|
264
|
-
const req = EntityProvenTxReq_1.EntityProvenTxReq.fromTxid(params.txid, rawTx, transaction.inputBEEF);
|
|
339
|
+
validateCommissionOutput(storage, tx, commissionRows);
|
|
340
|
+
const req = EntityProvenTxReq_1.EntityProvenTxReq.fromTxid(txid, rawTx, transaction.inputBEEF);
|
|
265
341
|
req.addNotifyTransactionId(transactionId);
|
|
266
342
|
// "Processing" a transaction is the final step of creating a new one.
|
|
267
343
|
// If it is to be sent to the network directly (prior to return from processAction),
|
|
@@ -278,8 +354,8 @@ async function validateCommitNewTxToStorageArgs(storage, userId, params) {
|
|
|
278
354
|
const { status, postStatus } = determineReqTxStatus(params);
|
|
279
355
|
req.status = status.req;
|
|
280
356
|
const vargs = {
|
|
281
|
-
reference
|
|
282
|
-
txid
|
|
357
|
+
reference,
|
|
358
|
+
txid,
|
|
283
359
|
rawTx,
|
|
284
360
|
isSendWith: !!params.sendWith && params.sendWith.length > 0,
|
|
285
361
|
isDelayed: params.isDelayed,
|
|
@@ -294,13 +370,17 @@ async function validateCommitNewTxToStorageArgs(storage, userId, params) {
|
|
|
294
370
|
outputUpdates: [],
|
|
295
371
|
// update txid, status in transactions table and drop rawTransaction value
|
|
296
372
|
transactionUpdate: {
|
|
297
|
-
txid
|
|
373
|
+
txid,
|
|
298
374
|
rawTx: undefined,
|
|
299
375
|
inputBEEF: undefined,
|
|
300
376
|
status: status.tx
|
|
301
377
|
},
|
|
302
378
|
postStatus
|
|
303
379
|
};
|
|
380
|
+
if (transaction.noSendExpiryState != null) {
|
|
381
|
+
vargs.transactionUpdate.noSendExpiryState = 'signed';
|
|
382
|
+
vargs.transactionUpdate.noSendExpiryReleasedAt = Date.now();
|
|
383
|
+
}
|
|
304
384
|
// update outputs with txid, script offsets and lengths, drop long output scripts from outputs table
|
|
305
385
|
// outputs spendable will be updated for change to true and all others to !!o.tracked when tx has been broadcast
|
|
306
386
|
// MAX_OUTPUTSCRIPT_LENGTH is limit for scripts left in outputs table
|
|
@@ -309,10 +389,40 @@ async function validateCommitNewTxToStorageArgs(storage, userId, params) {
|
|
|
309
389
|
}
|
|
310
390
|
async function commitNewTxToStorage(storage, userId, vargs) {
|
|
311
391
|
let log = vargs.log;
|
|
392
|
+
// The chain tip and the storage transaction cannot share one atomic
|
|
393
|
+
// transaction, particularly for IndexedDB where awaiting network I/O may
|
|
394
|
+
// auto-commit the write transaction. Capture the wallet's canonical height
|
|
395
|
+
// immediately before the write transaction and bind that exact observation
|
|
396
|
+
// to the row revalidated under the lifecycle CAS below.
|
|
397
|
+
const observedBlockheight = vargs.transaction.noSendExpiryState != null && vargs.transaction.noSendExpiryMode === 'blockheight'
|
|
398
|
+
? await storage.getServices().getHeight()
|
|
399
|
+
: undefined;
|
|
400
|
+
const blockheightExpired = observedBlockheight != null && observedBlockheight >= (0, utilityHelpers_1.verifyInteger)(vargs.transaction.noSendExpiryDeadline);
|
|
401
|
+
if (blockheightExpired) {
|
|
402
|
+
throw new WERR_errors_1.WERR_INVALID_OPERATION('BRC-177 protected action expired before signature release');
|
|
403
|
+
}
|
|
312
404
|
log = (0, stampLog_1.stampLog)(log, 'start storage commitNewTxToStorage');
|
|
313
405
|
let req;
|
|
314
406
|
await storage.transaction(async (trx) => {
|
|
315
407
|
log = (0, stampLog_1.stampLog)(log, '... storage commitNewTxToStorage storage transaction start');
|
|
408
|
+
if (vargs.transaction.noSendExpiryState != null) {
|
|
409
|
+
const current = (0, utilityHelpers_1.verifyOne)(await storage.findTransactions({
|
|
410
|
+
partial: { transactionId: vargs.transactionId, userId },
|
|
411
|
+
trx
|
|
412
|
+
}));
|
|
413
|
+
if (current.noSendExpiryState !== 'unsigned') {
|
|
414
|
+
throw new WERR_errors_1.WERR_INVALID_OPERATION('BRC-177 protected action changed before signature release');
|
|
415
|
+
}
|
|
416
|
+
const deadline = (0, utilityHelpers_1.verifyInteger)(current.noSendExpiryDeadline);
|
|
417
|
+
const expired = current.noSendExpiryMode === 'blockheight'
|
|
418
|
+
? observedBlockheight == null || observedBlockheight >= deadline
|
|
419
|
+
: Math.floor(Date.now() / 1000) >= deadline;
|
|
420
|
+
if (expired)
|
|
421
|
+
throw new WERR_errors_1.WERR_INVALID_OPERATION('BRC-177 protected action expired before signature release');
|
|
422
|
+
if (!(await storage.compareAndSetNoSendExpiryState(current.transactionId, 'unsigned', 'signed', trx))) {
|
|
423
|
+
throw new WERR_errors_1.WERR_INVALID_OPERATION('BRC-177 protected action changed before signature release');
|
|
424
|
+
}
|
|
425
|
+
}
|
|
316
426
|
// Create initial 'nosend' proven_tx_req record to store signed, valid rawTx and input beef
|
|
317
427
|
req = await vargs.req.insertOrMerge(storage, trx);
|
|
318
428
|
log = (0, stampLog_1.stampLog)(log, '... storage commitNewTxToStorage req inserted');
|
|
@@ -320,7 +430,9 @@ async function commitNewTxToStorage(storage, userId, vargs) {
|
|
|
320
430
|
await storage.updateOutput(ou.id, ou.update, trx);
|
|
321
431
|
}
|
|
322
432
|
log = (0, stampLog_1.stampLog)(log, '... storage commitNewTxToStorage outputs updated');
|
|
323
|
-
|
|
433
|
+
const transactionUpdate = { ...vargs.transactionUpdate };
|
|
434
|
+
delete transactionUpdate.noSendExpiryState;
|
|
435
|
+
await storage.updateTransaction(vargs.transactionId, transactionUpdate, trx);
|
|
324
436
|
log = (0, stampLog_1.stampLog)(log, '... storage commitNewTxToStorage storage transaction end');
|
|
325
437
|
});
|
|
326
438
|
log = (0, stampLog_1.stampLog)(log, '... storage commitNewTxToStorage storage transaction await done');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processAction.js","sourceRoot":"","sources":["../../../../src/storage/methods/processAction.ts"],"names":[],"mappings":";;;;AAAA,6DAA6D;AAC7D,kCAOiB;AACjB,qEAAuE;AAQvE,qDAAiD;AACjD,iEAOqC;AACrC,4EAAwE;AACxE,uDAA6E;AAI7E,6EAA0F;AAG1F,mFAAyE;AACzE,uDAAmD;AACnD,sEAA6D;AAEtD,KAAK,wBACV,OAAwB,EACxB,IAAY,EACZ,IAA8B;IAE9B,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO;QAAE,OAAO,MAAM,iBAAiB,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;IACnF,OAAO,MAAM,OAAO,CAAC,SAAS,CAAC,QAAQ,CACrC,+BAA+B,EAC/B;QACE,SAAS,EAAE,gBAAgB;QAC3B,OAAO,EAAE,IAAI;QACb,UAAU,EAAE;YACV,2BAA2B,EAAE,IAAI,CAAC,OAAO;YACzC,mBAAmB,EAAE,IAAI,CAAC,QAAQ;YAClC,mBAAmB,EAAE,IAAI,CAAC,SAAS;YACnC,wBAAwB,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;SAC/C;KACF,EACD,KAAK,EAAC,IAAI,EAAC,EAAE;QACX,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;QACjE,IAAI,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,EAAE,0BAA0B,EAAE,MAAM,CAAC,eAAe,EAAE,MAAM,IAAI,CAAC,EAAE,EAAE,CAAC,CAAA;QAC7F,OAAO,MAAM,CAAA;IACf,CAAC,CACF,CAAA;AACH,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC9B,OAAwB,EACxB,IAAY,EACZ,IAA8B,EAC9B,MAAsB;IAEtB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;IAC1B,MAAM,EAAE,KAAK,CAAC,uBAAuB,CAAC,CAAA;IAEtC,MAAM,MAAM,GAAG,IAAA,yBAAQ,EAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACpC,MAAM,CAAC,GAAgC;QACrC,eAAe,EAAE,SAAS;KAC3B,CAAA;IAED,IAAI,GAAkC,CAAA;IACtC,MAAM,2BAA2B,GAAa,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAA;IAEhE,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAClC,OAAO,EACP,wCAAwC,EACxC,MAAM,EACN,KAAK,IAAI,EAAE,CAAC,MAAM,gCAAgC,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAC1E,CAAA;QACD,MAAM,EAAE,GAAG,CAAC,qCAAqC,CAAC,CACjD;QAAA,CAAC,EAAE,GAAG,EAAE,GAAG,MAAM,gBAAgB,CAChC,OAAO,EACP,sCAAsC,EACtC,MAAM,EACN,KAAK,IAAI,EAAE,CAAC,MAAM,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,CAC/D,CAAC,CAAA;QACF,MAAM,EAAE,GAAG,CAAC,sCAAsC,CAAC,CAAA;QACnD,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,2BAAa,EAAE,CAAA;QACnC,gGAAgG;QAChG,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACtC,MAAM,EAAE,GAAG,CAAC,eAAe,GAAG,CAAC,IAAI,EAAE,CAAC,CAAA;QACxC,CAAC;aAAM,CAAC;YACN,2BAA2B,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YAC1C,MAAM,EAAE,GAAG,CAAC,gBAAgB,GAAG,CAAC,IAAI,EAAE,CAAC,CAAA;QACzC,CAAC;IACH,CAAC;IAED,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,MAAM,gBAAgB,CACzC,OAAO,EACP,qCAAqC,EACrC,MAAM,EACN,KAAK,IAAI,EAAE,CAAC,MAAM,kBAAkB,CAClC,OAAO,EACP,MAAM,EACN,2BAA2B,EAC3B,IAAI,CAAC,SAAS,EACd,SAAS,EACT,MAAM,CACP,CACF,CAAA;IAED,CAAC,CAAC,eAAe,GAAG,GAAG,CAAA;IACvB,CAAC,CAAC,iBAAiB,GAAG,GAAG,CAAA;IAEzB,MAAM,EAAE,QAAQ,EAAE,CAAA;IAElB,OAAO,CAAC,CAAA;AACV,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC7B,OAAwB,EACxB,IAAY,EACZ,MAAiC,EACjC,QAA0B;IAE1B,IAAI,MAAM,IAAI,IAAI;QAAE,OAAO,MAAM,QAAQ,EAAE,CAAA;IAC3C,OAAO,MAAM,OAAO,CAAC,SAAS,CAAC,QAAQ,CACrC,IAAI,EACJ,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,EACvD,QAAQ,CACT,CAAA;AACH,CAAC;AAqCD;;;;;;;;;;GAUG;AACH,SAAS,kBAAkB,CACzB,OAA+B,EAC/B,GAAqB,EACrB,eAAoC;IAEpC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,MAAM,GAAyB,QAAQ,CAAA;QAC3C,IAAI,MAAM,CAAC,MAAM,KAAK,aAAa,EAAE,CAAC;YACpC,MAAM,GAAG,UAAU,CAAA;QACrB,CAAC;aAAM,IAAI,MAAM,CAAC,MAAM,KAAK,aAAa,EAAE,CAAC;YAC3C,MAAM,GAAG,SAAS,CAAA;YAClB,eAAe,CAAC,IAAI,CAAC,IAAI,qCAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;QACzD,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;IACzC,CAAC;AACH,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC7B,OAAwB,EACxB,CAAuB,EACvB,eAAoC,EACpC,MAA8B;IAE9B,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,KAAK,IAAI;QAAE,OAAM;IAC/D,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,OAAO,CAAC,WAAW,EAAE,CAAC,eAAe,EAAE,CAAC,CAAA;IACtF,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,EAAE,KAAK,CAAC,sBAAsB,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;QAC3D,MAAM,IAAI,2BAAa,CAAC,gCAAgC,CAAC,CAAA;IAC3D,CAAC;IACD,MAAM,EAAE,GAAG,CAAC,eAAe,CAAC,CAAA;AAC9B,CAAC;AAED,KAAK,UAAU,4BAA4B,CAAC,OAAwB,EAAE,KAAe;IACnF,MAAM,CAAC,GAAyB;QAC9B,IAAI,EAAE,IAAI,UAAI,EAAE;QAChB,OAAO,EAAE,EAAE;KACZ,CAAA;IAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,CAAC,GAAyB;YAC9B,IAAI;YACJ,MAAM,EAAE,SAAS;SAClB,CAAA;QACD,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,IAAI,CAAC;YACH,CAAC,CAAC,MAAM,GAAG,IAAA,gCAAe,EAAC,MAAM,OAAO,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAA;YAC9E,IAAI,CAAC,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC;gBACrB,CAAC,CAAC,MAAM,GAAG,aAAa,CAAA;gBACxB,SAAQ;YACV,CAAC;YAED,CAAC,CAAC,GAAG,GAAG,IAAA,gCAAe,EAAC,MAAM,OAAO,CAAC,gBAAgB,CAAC,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAA;YAC9E,IAAI,CAAC,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;gBAClB,CAAC,CAAC,MAAM,GAAG,OAAO,CAAA;gBAClB,CAAC,CAAC,KAAK,GAAG,qBAAqB,IAAI,iBAAiB,CAAA;YACtD,CAAC;iBAAM,CAAC;gBACN,IAAA,0CAAiB,EAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAA;YAC7B,CAAC;QACH,CAAC;QAAC,OAAO,MAAe,EAAE,CAAC;YACzB,MAAM,CAAC,GAAG,yBAAW,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;YACzC,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,EAAE,CAAA;QACrC,CAAC;IACH,CAAC;IAED,OAAO,CAAC,CAAA;AACV,CAAC;AAEM,KAAK,6BACV,OAAwB,EACxB,MAAc,EACd,KAAe,EACf,SAAkB,EAClB,CAAwB,EACxB,MAA8B;IAE9B,MAAM,GAAG,GAAqB,EAAE,CAAA;IAChC,MAAM,GAAG,GAAqC,SAAS,CAAA;IAEvD,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,CAAA;IAEtD,CAAC,KAAK,SAAS;QACb,CAAC,CAAC,MAAM,4BAA4B,CAAC,OAAO,EAAE,KAAK,CAAC;QACpD,CAAC,CAAC,MAAM,OAAO,CAAC,8BAA8B,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;IAE3D,MAAM,eAAe,GAAwB,EAAE,CAAA;IAC/C,kBAAkB,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,eAAe,CAAC,CAAA;IAEnD,MAAM,iBAAiB,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IACxD,MAAM,cAAc,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,IAAI,EAAE,CAAC,CAAA;IAElF,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAA,kCAAiB,EAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAClE,IAAI,SAAS,EAAE,CAAC;QACd,qFAAqF;QACrF,qFAAqF;QACrF,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjC,MAAM,OAAO,CAAC,WAAW,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;gBACpC,MAAM,OAAO,CAAC,iBAAiB,CAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,GAAG,CAAC,CAAA;gBACpF,MAAM,OAAO,CAAC,iBAAiB,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,GAAG,CAAC,CAAA;YAC7E,CAAC,CAAC,CAAA;QACJ,CAAC;QACD,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,CAAA;IACrB,CAAC;IAED,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,CAAA;IAErD,MAAM,gBAAgB,CAAC,OAAO,EAAE,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,CAAA;IAE3D,IAAI,KAAK,EAAE,CAAC;QACV,KAAK,MAAM,GAAG,IAAI,eAAe;YAAE,GAAG,CAAC,KAAK,GAAG,KAAK,CAAA;QACpD,MAAM,OAAO,CAAC,iBAAiB,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;IAC/D,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,0BAA0B,CAAC,eAAe,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;IACzF,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,IAAA,yCAAsB,EAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;IAC7E,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAA;AAClC,CAAC;AAOD,SAAS,oBAAoB,CAAC,MAA+E;IAI3G,IAAI,MAAM,CAAC,QAAQ,IAAI,CAAC,MAAM,CAAC,UAAU;QAAE,OAAO,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,CAAA;IACpH,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,SAAS;QACtC,OAAO,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,CAAA;IAChF,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QAC1C,OAAO;YACL,MAAM,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,EAAE,EAAE,aAAa,EAAE;YACjD,UAAU,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,UAAU,EAAE;SAC/C,CAAA;IACH,CAAC;IACD,MAAM,IAAI,2BAAa,CAAC,aAAa,CAAC,CAAA;AACxC,CAAC;AAED,SAAS,kBAAkB,CAAC,OAAwB,EAAE,EAAkB,EAAE,KAAoC;IAC5G,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,IAAA,8BAAa,EAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QAClC,MAAM,MAAM,GAAG,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAClD,MAAM,WAAW,GAAG,IAAA,kCAAQ,EAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAA;QAC7F,IAAI,CAAC,CAAC,aAAa,IAAI,IAAI,IAAI,WAAW,KAAK,IAAA,kCAAQ,EAAC,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC;YACzE,MAAM,IAAI,oCAAsB,CAC9B,wCAAwC,IAAI,uCAAuC,CACpF,CAAA;QACH,CAAC;QACD,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,WAAW,EAAE,CAAC;YAC3D,MAAM,IAAI,oCAAsB,CAC9B,qDAAqD,IAAI,uCAAuC,CACjG,CAAA;QACH,CAAC;QACD,MAAM,MAAM,GAAyB;YACnC,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,SAAS,EAAE,IAAI,EAAE,uFAAuF;YACxG,YAAY,EAAE,MAAM,CAAC,MAAM;YAC3B,YAAY,EAAE,MAAM,CAAC,MAAM;SAC5B,CAAA;QACD,IAAI,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,eAAe;QACzD,oHAAoH;QACpH,CAAC;YACC,MAAM,CAAC,aAAa,GAAG,SAAS,CAAA;QAClC,CAAC;QACD,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAA;IACtD,CAAC;AACH,CAAC;AA2BD,KAAK,UAAU,gCAAgC,CAC7C,OAAwB,EACxB,MAAc,EACd,MAAgC;IAEhC,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;QAC9D,MAAM,IAAI,oCAAsB,CAAC,4CAA4C,CAAC,CAAA;IAChF,CAAC;IACD,MAAM,KAAK,GAAG,IAAA,iCAAO,EAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACnC,IAAI,EAAkB,CAAA;IACtB,IAAI,CAAC;QACH,EAAE,GAAG,iBAAc,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;IACvC,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,oCAAsB,CAAC,wCAAwC,CAAC,CAAA;IAC5E,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,oCAAsB,CAAC,4DAA4D,CAAC,CAAA;IAChG,CAAC;IACD,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAA;IACtC,IAAI,CAAC,CAAC,MAAM,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,oCAAsB,CAAC;;2FAEsD,CAAC,CAAA;IAC1F,CAAC;IACD,MAAM,eAAe,GAAG,IAAA,2CAAoB,EAAC,KAAK,CAAC,CAAA;IACnD,MAAM,WAAW,GAAG,IAAA,0BAAS,EAC3B,MAAM,OAAO,CAAC,gBAAgB,CAAC;QAC7B,OAAO,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE;KACjD,CAAC,CACH,CAAA;IACD,IAAI,CAAC,WAAW,CAAC,UAAU;QAAE,MAAM,IAAI,oCAAsB,CAAC,wBAAwB,CAAC,CAAA;IACvF,IAAI,WAAW,CAAC,SAAS,IAAI,IAAI;QAAE,MAAM,IAAI,oCAAsB,EAAE,CAAA;IACrE,uDAAuD;IACvD,IAAI,WAAW,CAAC,MAAM,KAAK,UAAU,IAAI,WAAW,CAAC,MAAM,KAAK,aAAa,EAAE,CAAC;QAC9E,MAAM,IAAI,oCAAsB,CAAC,8BAA8B,WAAW,CAAC,MAAM,EAAE,CAAC,CAAA;IACtF,CAAC;IACD,MAAM,aAAa,GAAG,IAAA,yBAAQ,EAAC,WAAW,CAAC,aAAa,CAAC,CAAA;IACzD,wEAAwE;IACxE,4EAA4E;IAC5E,oCAAoC;IACpC,MAAM,CAAC,aAAa,EAAE,cAAc,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACxD,OAAO,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,CAAC;QAC3D,OAAO,CAAC,kBAAkB,GAAG,CAAC;YAC5B,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,CAAC;YACjE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;KACxB,CAAC,CAAA;IAEF,MAAM,UAAU,GAAG,IAAA,gCAAe,EAAC,cAAc,CAAC,CAAA;IAClD,IAAI,OAAO,CAAC,kBAAkB,GAAG,CAAC,EAAE,CAAC;QACnC,8BAA8B;QAC9B,IAAI,UAAU,IAAI,IAAI;YAAE,MAAM,IAAI,2BAAa,EAAE,CAAA;QACjD,MAAM,eAAe,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CACrC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,QAAQ,IAAI,CAAC,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,IAAA,kCAAQ,EAAC,UAAU,CAAC,aAAa,CAAC,CAC1G,CAAA;QACD,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,IAAI,oCAAsB,CAAC,6DAA6D,CAAC,CAAA;QACjG,CAAC;IACH,CAAC;IAED,MAAM,GAAG,GAAG,qCAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,SAAS,CAAC,CAAA;IACjF,GAAG,CAAC,sBAAsB,CAAC,aAAa,CAAC,CAAA;IAEzC,sEAAsE;IACtE,oFAAoF;IACpF,+CAA+C;IAC/C,0CAA0C;IAC1C,qEAAqE;IACrE,EAAE;IACF,2FAA2F;IAC3F,gGAAgG;IAChG,oFAAoF;IACpF,+CAA+C;IAC/C,oDAAoD;IACpD,qJAAqJ;IACrJ,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAA;IAE3D,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,CAAA;IACvB,MAAM,KAAK,GAAkC;QAC3C,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,KAAK;QACL,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;QAC3D,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,kDAAkD;QAClD,EAAE;QACF,eAAe;QACf,aAAa;QACb,WAAW;QACX,aAAa;QACb,GAAG;QACH,aAAa,EAAE,EAAE;QACjB,0EAA0E;QAC1E,iBAAiB,EAAE;YACjB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,KAAK,EAAE,SAAS;YAChB,SAAS,EAAE,SAAS;YACpB,MAAM,EAAE,MAAM,CAAC,EAAE;SAClB;QACD,UAAU;KACX,CAAA;IAED,oGAAoG;IACpG,gHAAgH;IAChH,qEAAqE;IACrE,kBAAkB,CAAC,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,CAAA;IAEtC,OAAO,KAAK,CAAA;AACd,CAAC;AAOD,KAAK,UAAU,oBAAoB,CACjC,OAAwB,EACxB,MAAc,EACd,KAAoC;IAEpC,IAAI,GAAG,GAAG,KAAK,CAAC,GAAG,CAAA;IAEnB,GAAG,GAAG,IAAA,mBAAQ,EAAC,GAAG,EAAE,oCAAoC,CAAC,CAAA;IAEzD,IAAI,GAAkC,CAAA;IAEtC,MAAM,OAAO,CAAC,WAAW,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;QACpC,GAAG,GAAG,IAAA,mBAAQ,EAAC,GAAG,EAAE,4DAA4D,CAAC,CAAA;QAEjF,2FAA2F;QAC3F,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;QAEjD,GAAG,GAAG,IAAA,mBAAQ,EAAC,GAAG,EAAE,+CAA+C,CAAC,CAAA;QAEpE,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;YACrC,MAAM,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;QACnD,CAAC;QAED,GAAG,GAAG,IAAA,mBAAQ,EAAC,GAAG,EAAE,kDAAkD,CAAC,CAAA;QAEvE,MAAM,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAA;QAElF,GAAG,GAAG,IAAA,mBAAQ,EAAC,GAAG,EAAE,0DAA0D,CAAC,CAAA;IACjF,CAAC,CAAC,CAAA;IAEF,GAAG,GAAG,IAAA,mBAAQ,EAAC,GAAG,EAAE,iEAAiE,CAAC,CAAA;IAEtF,MAAM,CAAC,GAAuB;QAC5B,GAAG,EAAE,IAAA,6BAAY,EAAC,GAAG,CAAC;QACtB,GAAG;KACJ,CAAA;IAED,GAAG,GAAG,IAAA,mBAAQ,EAAC,GAAG,EAAE,kCAAkC,CAAC,CAAA;IAEvD,OAAO,CAAC,CAAA;AACV,CAAC"}
|
|
1
|
+
{"version":3,"file":"processAction.js","sourceRoot":"","sources":["../../../../src/storage/methods/processAction.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"purgeData.d.ts","sourceRoot":"","sources":["../../../../src/storage/methods/purgeData.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAyB,QAAQ,EAAE,MAAM,oCAAoC,CAAA;AAQ/G,wBAAsB,SAAS,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,YAAY,CAAC,
|
|
1
|
+
{"version":3,"file":"purgeData.d.ts","sourceRoot":"","sources":["../../../../src/storage/methods/purgeData.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAyB,QAAQ,EAAE,MAAM,oCAAoC,CAAA;AAQ/G,wBAAsB,SAAS,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,YAAY,CAAC,CA6ChH"}
|
|
@@ -15,12 +15,21 @@ async function purgeData(storage, params, trx) {
|
|
|
15
15
|
if (params.purgeSpent) {
|
|
16
16
|
await purgeSpentData(storage, params.purgeSpentAge || defaultAge, r, trx);
|
|
17
17
|
}
|
|
18
|
+
await runPurgeQuery({
|
|
19
|
+
log: 'unused prepared BEEFs deleted',
|
|
20
|
+
q: storage
|
|
21
|
+
.toDb(trx)('prepared_beefs')
|
|
22
|
+
.whereRaw('not exists(select ?? from outputs as o where ' +
|
|
23
|
+
'?? = ?? and o.txid = ?? and ' +
|
|
24
|
+
'?? = ? and ?? is null)', ['o.outputId', 'o.userId', 'prepared_beefs.userId', 'prepared_beefs.rootTxid', 'o.spendable', true, 'o.spentBy'])
|
|
25
|
+
.delete()
|
|
26
|
+
}, r);
|
|
18
27
|
await runPurgeQuery({
|
|
19
28
|
log: 'orphan proven_txs deleted',
|
|
20
29
|
q: storage
|
|
21
30
|
.toDb(trx)('proven_txs')
|
|
22
|
-
.whereRaw('not exists(select * from transactions as t where t.txid = proven_txs.txid or t.provenTxId
|
|
23
|
-
.whereRaw('not exists(select * from proven_tx_reqs as r where r.txid = proven_txs.txid or r.provenTxId
|
|
31
|
+
.whereRaw('not exists(select * from transactions as t where t.txid = proven_txs.txid or ?? = ??)', ['t.provenTxId', 'proven_txs.provenTxId'])
|
|
32
|
+
.whereRaw('not exists(select * from proven_tx_reqs as r where r.txid = proven_txs.txid or ?? = ??)', ['r.provenTxId', 'proven_txs.provenTxId'])
|
|
24
33
|
.delete()
|
|
25
34
|
}, r);
|
|
26
35
|
return r;
|
|
@@ -129,7 +138,13 @@ async function purgeSpentData(storage, age, result, trx) {
|
|
|
129
138
|
.toDb(trx)('transactions')
|
|
130
139
|
.where('updated_at', '<', before)
|
|
131
140
|
.where('status', 'completed')
|
|
132
|
-
.whereRaw('not exists(select
|
|
141
|
+
.whereRaw('not exists(select ?? from outputs as o where ?? = ?? and ?? = ?)', [
|
|
142
|
+
'o.outputId',
|
|
143
|
+
'o.transactionId',
|
|
144
|
+
'transactions.transactionId',
|
|
145
|
+
'o.spendable',
|
|
146
|
+
true
|
|
147
|
+
]);
|
|
133
148
|
const ids = spentTransactions
|
|
134
149
|
.filter(transaction => !proofTxids.has(transaction.txid ?? ''))
|
|
135
150
|
.map(transaction => transaction.transactionId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"purgeData.js","sourceRoot":"","sources":["../../../../src/storage/methods/purgeData.ts"],"names":[],"mappings":";;;AAAA,kCAA+B;AAI/B,uDAAmD;AAO5C,KAAK,oBAAoB,OAAoB,EAAE,MAAmB,EAAE,GAAc;IACvF,MAAM,CAAC,GAAiB,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAA;IAC7C,MAAM,UAAU,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAA;IAE3C,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;QAC1B,MAAM,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC,iBAAiB,IAAI,UAAU,EAAE,CAAC,EAAE,GAAG,CAAC,CAAA;IACnF,CAAC;IAED,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QACvB,MAAM,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,cAAc,IAAI,UAAU,EAAE,CAAC,EAAE,GAAG,CAAC,CAAA;IAC7E,CAAC;IAED,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACtB,MAAM,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,aAAa,IAAI,UAAU,EAAE,CAAC,EAAE,GAAG,CAAC,CAAA;IAC3E,CAAC;IAED,MAAM,aAAa,CAAC;QAClB,GAAG,EAAE,2BAA2B;QAChC,CAAC,EAAE,OAAO;aACP,IAAI,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC;aACvB,QAAQ,CACP,
|
|
1
|
+
{"version":3,"file":"purgeData.js","sourceRoot":"","sources":["../../../../src/storage/methods/purgeData.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { WalletLoggerInterface } from '@bsv/sdk';
|
|
2
|
+
import type * as sdk from '../../sdk';
|
|
3
|
+
import { StorageProvider } from '../StorageProvider';
|
|
4
|
+
import { EntityProvenTxReq } from '../schema/entities';
|
|
5
|
+
export interface FailedInputReconciliationResult {
|
|
6
|
+
checked: number;
|
|
7
|
+
staleConfirmed: number;
|
|
8
|
+
staleOutpoints: string[];
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Conservatively quarantine every locally-owned input of a transaction after
|
|
12
|
+
* Arcade supplies explicit missing-input/conflict evidence. This path is
|
|
13
|
+
* deliberately independent of explorer or UTXO providers: a positive
|
|
14
|
+
* broadcaster verdict is enough to stop the failed transaction from feeding
|
|
15
|
+
* the same inputs into another action. A later validated mined proof remains
|
|
16
|
+
* able to repair the transaction through the ordinary proof recovery path.
|
|
17
|
+
*/
|
|
18
|
+
export declare function quarantineReqInputs(req: EntityProvenTxReq, storage: StorageProvider, trx?: sdk.TrxToken, logger?: WalletLoggerInterface): Promise<FailedInputReconciliationResult>;
|
|
19
|
+
/**
|
|
20
|
+
* Keep only inputs created by a locally terminal parent unavailable after the
|
|
21
|
+
* failed-child transition releases its allocations. Other inputs may still be
|
|
22
|
+
* valid UTXOs and must remain reusable.
|
|
23
|
+
*/
|
|
24
|
+
export declare function quarantineReqInputsFromFailedParents(req: EntityProvenTxReq, failedParentTxids: string[], storage: StorageProvider, trx?: sdk.TrxToken, logger?: WalletLoggerInterface): Promise<FailedInputReconciliationResult>;
|
|
25
|
+
/**
|
|
26
|
+
* Ask the configured UTXO-provider collection to classify the request's local
|
|
27
|
+
* inputs and mark only positively confirmed spent outputs unavailable.
|
|
28
|
+
* Provider errors and a collection with no providers are inconclusive and
|
|
29
|
+
* never count as spent.
|
|
30
|
+
*/
|
|
31
|
+
export declare function markConfirmedStaleReqInputs(req: EntityProvenTxReq, storage: StorageProvider, services: sdk.WalletServices, trx?: sdk.TrxToken, logger?: WalletLoggerInterface): Promise<FailedInputReconciliationResult>;
|
|
32
|
+
//# sourceMappingURL=reconcileFailedTransactionInputs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reconcileFailedTransactionInputs.d.ts","sourceRoot":"","sources":["../../../../src/storage/methods/reconcileFailedTransactionInputs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,qBAAqB,EAAE,MAAM,UAAU,CAAA;AAC7D,OAAO,KAAK,KAAK,GAAG,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAStD,MAAM,WAAW,+BAA+B;IAC9C,OAAO,EAAE,MAAM,CAAA;IACf,cAAc,EAAE,MAAM,CAAA;IACtB,cAAc,EAAE,MAAM,EAAE,CAAA;CACzB;AA4DD;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,iBAAiB,EACtB,OAAO,EAAE,eAAe,EACxB,GAAG,CAAC,EAAE,GAAG,CAAC,QAAQ,EAClB,MAAM,CAAC,EAAE,qBAAqB,GAC7B,OAAO,CAAC,+BAA+B,CAAC,CAS1C;AAED;;;;GAIG;AACH,wBAAsB,oCAAoC,CACxD,GAAG,EAAE,iBAAiB,EACtB,iBAAiB,EAAE,MAAM,EAAE,EAC3B,OAAO,EAAE,eAAe,EACxB,GAAG,CAAC,EAAE,GAAG,CAAC,QAAQ,EAClB,MAAM,CAAC,EAAE,qBAAqB,GAC7B,OAAO,CAAC,+BAA+B,CAAC,CAY1C;AAED;;;;;GAKG;AACH,wBAAsB,2BAA2B,CAC/C,GAAG,EAAE,iBAAiB,EACtB,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,GAAG,CAAC,cAAc,EAC5B,GAAG,CAAC,EAAE,GAAG,CAAC,QAAQ,EAClB,MAAM,CAAC,EAAE,qBAAqB,GAC7B,OAAO,CAAC,+BAA+B,CAAC,CAmD1C"}
|