@bsv/wallet-toolbox 1.6.3 → 1.6.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -0
- package/docs/client.md +402 -313
- package/docs/monitor.md +4 -4
- package/docs/services.md +118 -133
- package/docs/wallet.md +402 -313
- package/mobile/out/src/monitor/Monitor.d.ts +3 -3
- package/mobile/out/src/monitor/Monitor.d.ts.map +1 -1
- package/mobile/out/src/monitor/Monitor.js.map +1 -1
- package/mobile/out/src/sdk/WalletServices.interfaces.d.ts +88 -2
- package/mobile/out/src/sdk/WalletServices.interfaces.d.ts.map +1 -1
- package/mobile/out/src/services/Services.js +1 -1
- package/mobile/out/src/services/Services.js.map +1 -1
- package/mobile/out/src/services/chaintracker/ChaintracksChainTracker.d.ts +3 -3
- package/mobile/out/src/services/chaintracker/ChaintracksChainTracker.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/ChaintracksChainTracker.js.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.d.ts +1 -6
- package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkStorageApi.d.ts +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkStorageApi.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.d.ts +2 -2
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts +33 -16
- package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.d.ts +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Chaintracks.js +15 -11
- package/mobile/out/src/services/chaintracker/chaintracks/Chaintracks.js.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.d.ts +2 -2
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js +4 -4
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js +2 -3
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.d.ts +2 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js +3 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts +2 -2
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js +4 -5
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.d.ts +2 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js +2 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts +7 -7
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js +42 -5
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts +3 -7
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js +63 -130
- package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/index.client.d.ts +0 -3
- package/mobile/out/src/services/chaintracker/chaintracks/index.client.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/index.client.js +0 -3
- package/mobile/out/src/services/chaintracker/chaintracks/index.client.js.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts +2 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js +19 -7
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.d.ts +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts +2 -2
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js +2 -2
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/HeightRange.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/HeightRange.js +4 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/HeightRange.js.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js +26 -11
- package/mobile/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js.map +1 -1
- package/mobile/out/src/services/createDefaultWalletServicesOptions.d.ts +2 -1
- package/mobile/out/src/services/createDefaultWalletServicesOptions.d.ts.map +1 -1
- package/mobile/out/src/services/createDefaultWalletServicesOptions.js +19 -17
- package/mobile/out/src/services/createDefaultWalletServicesOptions.js.map +1 -1
- package/mobile/package-lock.json +2 -2
- package/mobile/package.json +1 -1
- package/out/src/monitor/Monitor.d.ts +3 -3
- package/out/src/monitor/Monitor.d.ts.map +1 -1
- package/out/src/monitor/Monitor.js.map +1 -1
- package/out/src/sdk/WalletServices.interfaces.d.ts +88 -2
- package/out/src/sdk/WalletServices.interfaces.d.ts.map +1 -1
- package/out/src/services/Services.js +1 -1
- package/out/src/services/Services.js.map +1 -1
- package/out/src/services/chaintracker/ChaintracksChainTracker.d.ts +3 -3
- package/out/src/services/chaintracker/ChaintracksChainTracker.d.ts.map +1 -1
- package/out/src/services/chaintracker/ChaintracksChainTracker.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.d.ts +1 -6
- package/out/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Api/BulkStorageApi.d.ts +1 -1
- package/out/src/services/chaintracker/chaintracks/Api/BulkStorageApi.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.d.ts +2 -2
- package/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts +33 -16
- package/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.d.ts +1 -1
- package/out/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts +1 -1
- package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Chaintracks.js +15 -11
- package/out/src/services/chaintracker/chaintracks/Chaintracks.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.d.ts +2 -2
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js +4 -4
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js +2 -3
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.d.ts +2 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js +3 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js +3 -3
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts +2 -2
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js +4 -5
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/__tests/BulkIngestorCDNBabbage.test.js +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/__tests/BulkIngestorCDNBabbage.test.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.test.js +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.test.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.d.ts +2 -1
- package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js +2 -1
- package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.js +4 -3
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts +7 -7
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js +42 -5
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.d.ts +91 -0
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js +448 -0
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.d.ts +3 -29
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js +61 -137
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts +3 -7
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js +63 -130
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageIdb.test.d.ts +2 -0
- package/out/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageIdb.test.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageIdb.test.js +81 -0
- package/out/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageIdb.test.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.js +12 -1
- package/out/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/__tests/createIdbChaintracks.test.d.ts +2 -0
- package/out/src/services/chaintracker/chaintracks/__tests/createIdbChaintracks.test.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/__tests/createIdbChaintracks.test.js +50 -0
- package/out/src/services/chaintracker/chaintracks/__tests/createIdbChaintracks.test.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.d.ts +12 -0
- package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js +83 -0
- package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js.map +1 -0
- 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.client.d.ts +0 -3
- package/out/src/services/chaintracker/chaintracks/index.client.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/index.client.js +0 -3
- package/out/src/services/chaintracker/chaintracks/index.client.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts +2 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js +19 -7
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.d.ts +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts +2 -2
- package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js +2 -2
- package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/HeightRange.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/HeightRange.js +4 -1
- package/out/src/services/chaintracker/chaintracks/util/HeightRange.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js +26 -11
- package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js.map +1 -1
- package/out/src/services/createDefaultWalletServicesOptions.d.ts +2 -1
- package/out/src/services/createDefaultWalletServicesOptions.d.ts.map +1 -1
- package/out/src/services/createDefaultWalletServicesOptions.js +19 -17
- package/out/src/services/createDefaultWalletServicesOptions.js.map +1 -1
- package/out/src/services/providers/__tests/exchangeRates.test.d.ts +2 -0
- package/out/src/services/providers/__tests/exchangeRates.test.d.ts.map +1 -0
- package/out/src/services/providers/__tests/exchangeRates.test.js +19 -0
- package/out/src/services/providers/__tests/exchangeRates.test.js.map +1 -0
- package/out/test/Wallet/support/operations.man.test.js +1 -1
- package/out/test/Wallet/support/operations.man.test.js.map +1 -1
- package/out/tsconfig.all.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/monitor/Monitor.ts +3 -3
- package/src/sdk/WalletServices.interfaces.ts +88 -1
- package/src/services/Services.ts +1 -1
- package/src/services/chaintracker/ChaintracksChainTracker.ts +3 -2
- package/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.ts +1 -7
- package/src/services/chaintracker/chaintracks/Api/BulkStorageApi.ts +1 -1
- package/src/services/chaintracker/chaintracks/Api/ChaintracksApi.ts +2 -2
- package/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.ts +39 -14
- package/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.ts +1 -1
- package/src/services/chaintracker/chaintracks/Chaintracks.ts +16 -11
- package/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.ts +4 -5
- package/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.ts +1 -1
- package/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.ts +2 -3
- package/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.ts +1 -0
- package/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.ts +3 -1
- package/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.ts +1 -1
- package/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.ts +10 -3
- package/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.ts +6 -4
- package/src/services/chaintracker/chaintracks/Ingest/__tests/BulkIngestorCDNBabbage.test.ts +1 -1
- package/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.test.ts +1 -1
- package/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.ts +2 -1
- package/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.ts +4 -3
- package/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.ts +60 -11
- package/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.ts +557 -0
- package/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.ts +80 -179
- package/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.ts +63 -133
- package/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageIdb.test.ts +102 -0
- package/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.ts +14 -1
- package/src/services/chaintracker/chaintracks/__tests/createIdbChaintracks.test.ts +61 -0
- package/src/services/chaintracker/chaintracks/createIdbChaintracks.ts +111 -0
- package/src/services/chaintracker/chaintracks/index.all.ts +4 -0
- package/src/services/chaintracker/chaintracks/index.client.ts +0 -3
- package/src/services/chaintracker/chaintracks/util/BulkFileDataManager.ts +20 -11
- package/src/services/chaintracker/chaintracks/util/BulkFilesReader.ts +1 -1
- package/src/services/chaintracker/chaintracks/util/BulkHeaderFile.ts +3 -3
- package/src/services/chaintracker/chaintracks/util/HeightRange.ts +4 -1
- package/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.ts +26 -11
- package/src/services/createDefaultWalletServicesOptions.ts +25 -18
- package/src/services/providers/__tests/exchangeRates.test.ts +18 -0
- package/test/Wallet/support/operations.man.test.ts +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksService.d.ts +0 -30
- package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksService.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksService.js +0 -149
- package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksService.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.d.ts +0 -23
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js +0 -57
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts +0 -16
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js +0 -53
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js.map +0 -1
|
@@ -47,6 +47,8 @@ export class BulkFileDataManager {
|
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
49
|
|
|
50
|
+
private log: (...args: any[]) => void = () => {}
|
|
51
|
+
|
|
50
52
|
private bfds: BulkFileData[] = []
|
|
51
53
|
private fileHashToIndex: Record<string, number> = {}
|
|
52
54
|
private lock: SingleWriterMultiReaderLock = new SingleWriterMultiReaderLock()
|
|
@@ -109,17 +111,26 @@ export class BulkFileDataManager {
|
|
|
109
111
|
log += ` url: ${url}\n`
|
|
110
112
|
log += ` bulk range before: ${rangeBefore}\n`
|
|
111
113
|
log += ` bulk range after: ${rangeAfter}\n`
|
|
112
|
-
|
|
114
|
+
this.log(log)
|
|
113
115
|
}
|
|
114
116
|
|
|
115
|
-
async setStorage(storage: ChaintracksStorageBulkFileApi): Promise<void> {
|
|
116
|
-
return this.lock.withWriteLock(async () => this.setStorageNoLock(storage))
|
|
117
|
+
async setStorage(storage: ChaintracksStorageBulkFileApi, log: (...args: any[]) => void): Promise<void> {
|
|
118
|
+
return this.lock.withWriteLock(async () => this.setStorageNoLock(storage, log))
|
|
117
119
|
}
|
|
118
120
|
|
|
119
|
-
private async setStorageNoLock(storage: ChaintracksStorageBulkFileApi): Promise<void> {
|
|
121
|
+
private async setStorageNoLock(storage: ChaintracksStorageBulkFileApi, log: (...args: any[]) => void): Promise<void> {
|
|
120
122
|
this.storage = storage
|
|
123
|
+
this.log = log
|
|
121
124
|
// Sync bfds with storage. Two scenarios supported:
|
|
122
|
-
|
|
125
|
+
let sfs = await this.storage.getBulkFiles()
|
|
126
|
+
const lastCdnBfd = this.bfds.filter(f => isBdfCdn(f)).slice(-1)[0]
|
|
127
|
+
const lastCdnSfs = sfs.filter(f => isBdfCdn(f)).slice(-1)[0]
|
|
128
|
+
if (lastCdnBfd && lastCdnSfs && lastCdnBfd.firstHeight + lastCdnBfd.count > lastCdnSfs.firstHeight + lastCdnSfs.count) {
|
|
129
|
+
// Storage has fewer cdn headers than bfds, clear them and try again.
|
|
130
|
+
for (const s of sfs.reverse())
|
|
131
|
+
await this.storage.deleteBulkFile(s.fileId!);
|
|
132
|
+
sfs = []
|
|
133
|
+
}
|
|
123
134
|
if (sfs.length === 0) {
|
|
124
135
|
// 1. Storage has no files: Update storage to reflect bfds.
|
|
125
136
|
for (const bfd of this.bfds) {
|
|
@@ -141,11 +152,9 @@ export class BulkFileDataManager {
|
|
|
141
152
|
this.fileHashToIndex = {}
|
|
142
153
|
|
|
143
154
|
if (this.fromKnownSourceUrl) {
|
|
144
|
-
const
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
this.maxPerFile
|
|
148
|
-
)
|
|
155
|
+
const vbhfs = validBulkHeaderFiles
|
|
156
|
+
const filtered = vbhfs.filter(f => f.sourceUrl === this.fromKnownSourceUrl)
|
|
157
|
+
const files = selectBulkHeaderFiles(filtered, this.chain, this.maxPerFile)
|
|
149
158
|
for (const file of files) {
|
|
150
159
|
this.add({ ...file, fileHash: file.fileHash!, mru: Date.now() })
|
|
151
160
|
}
|
|
@@ -187,7 +196,7 @@ export class BulkFileDataManager {
|
|
|
187
196
|
}
|
|
188
197
|
}
|
|
189
198
|
}
|
|
190
|
-
|
|
199
|
+
this.log(`BulkFileDataManager.merge:\n${this.toLogString(r)}\n`)
|
|
191
200
|
return r
|
|
192
201
|
}
|
|
193
202
|
|
|
@@ -325,7 +325,7 @@ export class BulkFilesReaderStorage extends BulkFilesReader {
|
|
|
325
325
|
|
|
326
326
|
static async fromStorage(
|
|
327
327
|
storage: ChaintracksStorageBase,
|
|
328
|
-
fetch
|
|
328
|
+
fetch?: ChaintracksFetchApi,
|
|
329
329
|
range?: HeightRange,
|
|
330
330
|
maxBufferSize?: number
|
|
331
331
|
): Promise<BulkFilesReaderStorage> {
|
|
@@ -189,7 +189,7 @@ export class BulkHeaderFileStorage extends BulkHeaderFile {
|
|
|
189
189
|
constructor(
|
|
190
190
|
info: BulkHeaderFileInfo,
|
|
191
191
|
public storage: ChaintracksStorageBase,
|
|
192
|
-
public fetch
|
|
192
|
+
public fetch?: ChaintracksFetchApi
|
|
193
193
|
) {
|
|
194
194
|
super(info)
|
|
195
195
|
}
|
|
@@ -200,8 +200,8 @@ export class BulkHeaderFileStorage extends BulkHeaderFile {
|
|
|
200
200
|
|
|
201
201
|
override async ensureData(): Promise<Uint8Array> {
|
|
202
202
|
if (this.data) return this.data
|
|
203
|
-
if (!this.sourceUrl) {
|
|
204
|
-
throw new WERR_INVALID_PARAMETER('sourceUrl', 'defined. Or data must be defined.')
|
|
203
|
+
if (!this.sourceUrl || !this.fetch) {
|
|
204
|
+
throw new WERR_INVALID_PARAMETER('sourceUrl and fetch', 'defined. Or data must be defined.')
|
|
205
205
|
}
|
|
206
206
|
const url = this.fetch.pathJoin(this.sourceUrl!, this.fileName)
|
|
207
207
|
this.data = await this.fetch.download(url)
|
|
@@ -62,7 +62,10 @@ export class HeightRange implements HeightRangeApi {
|
|
|
62
62
|
* @returns
|
|
63
63
|
*/
|
|
64
64
|
intersect(range: HeightRange) {
|
|
65
|
-
|
|
65
|
+
//if (this.isEmpty || range.isEmpty) return HeightRange.empty
|
|
66
|
+
//if (this.maxHeight < range.minHeight || this.minHeight > range.maxHeight) return HeightRange.empty
|
|
67
|
+
const r = new HeightRange(Math.max(this.minHeight, range.minHeight), Math.min(this.maxHeight, range.maxHeight))
|
|
68
|
+
return r
|
|
66
69
|
}
|
|
67
70
|
|
|
68
71
|
/**
|
|
@@ -242,16 +242,16 @@ export const validBulkHeaderFiles: BulkHeaderFileInfo[] = [
|
|
|
242
242
|
validated: true
|
|
243
243
|
},
|
|
244
244
|
{
|
|
245
|
-
sourceUrl:
|
|
246
|
-
fileName:
|
|
245
|
+
sourceUrl: "https://cdn.projectbabbage.com/blockheaders",
|
|
246
|
+
fileName: "testNet_16.headers",
|
|
247
247
|
firstHeight: 1600000,
|
|
248
|
-
prevHash:
|
|
249
|
-
count:
|
|
250
|
-
lastHash:
|
|
251
|
-
fileHash:
|
|
252
|
-
lastChainWork:
|
|
253
|
-
prevChainWork:
|
|
254
|
-
chain:
|
|
248
|
+
prevHash: "00000000000005504bfd1a3ce4688c30c86740390102b6cd464a2fb5e0e3fed1",
|
|
249
|
+
count: 89594,
|
|
250
|
+
lastHash: "0000000035ba2558f604ff73909944235b8094f07c0efa9c91f59b62b4920516",
|
|
251
|
+
fileHash: "jw+ItRm5zjngLuuClRZONclYWCC66wPovV3XPF585KU=",
|
|
252
|
+
lastChainWork: "00000000000000000000000000000000000000000000015814b79f747a43902a",
|
|
253
|
+
prevChainWork: "000000000000000000000000000000000000000000000156c3b84396da4e60b9",
|
|
254
|
+
chain: "test",
|
|
255
255
|
validated: true
|
|
256
256
|
},
|
|
257
257
|
{
|
|
@@ -368,7 +368,8 @@ export const validBulkHeaderFiles: BulkHeaderFileInfo[] = [
|
|
|
368
368
|
lastHash: '00000000000000000e7dcc27c06ee353bd37260b2e7e664314c204f0324a5087',
|
|
369
369
|
prevChainWork: '000000000000000000000000000000000000000001483b2995af390c20b58320',
|
|
370
370
|
prevHash: '00000000000000000b6ae23bbe9f549844c20943d8c20b8ceedbae8aa1dde8e0',
|
|
371
|
-
sourceUrl: 'https://cdn.projectbabbage.com/blockheaders'
|
|
371
|
+
sourceUrl: 'https://cdn.projectbabbage.com/blockheaders',
|
|
372
|
+
validated: true
|
|
372
373
|
},
|
|
373
374
|
{
|
|
374
375
|
chain: 'main',
|
|
@@ -380,6 +381,20 @@ export const validBulkHeaderFiles: BulkHeaderFileInfo[] = [
|
|
|
380
381
|
lastHash: '00000000000000000c119d65afcc66b640e98b839414c7e66d22b428ecb24a43',
|
|
381
382
|
prevChainWork: '000000000000000000000000000000000000000001664db1f2d50327928007e0',
|
|
382
383
|
prevHash: '00000000000000000e7dcc27c06ee353bd37260b2e7e664314c204f0324a5087',
|
|
383
|
-
sourceUrl: 'https://cdn.projectbabbage.com/blockheaders'
|
|
384
|
+
sourceUrl: 'https://cdn.projectbabbage.com/blockheaders',
|
|
385
|
+
validated: true
|
|
386
|
+
},
|
|
387
|
+
{
|
|
388
|
+
chain: "main",
|
|
389
|
+
count: 10376,
|
|
390
|
+
fileHash: "0CXeFvl+RHRb9kRKp6032vKCVnbs2K9A3Aa4cxg7iJU=",
|
|
391
|
+
fileName: "mainNet_9.headers",
|
|
392
|
+
firstHeight: 900000,
|
|
393
|
+
lastChainWork: "000000000000000000000000000000000000000001683907cdf89f89a1258f08",
|
|
394
|
+
lastHash: "00000000000000000413b1b30aa83898de436af0906bb178904900069ec26337",
|
|
395
|
+
prevChainWork: "000000000000000000000000000000000000000001664db1f2d50327928007e0",
|
|
396
|
+
prevHash: "00000000000000000e7dcc27c06ee353bd37260b2e7e664314c204f0324a5087",
|
|
397
|
+
sourceUrl: "https://cdn.projectbabbage.com/blockheaders",
|
|
398
|
+
validated: true
|
|
384
399
|
}
|
|
385
400
|
]
|
|
@@ -1,60 +1,67 @@
|
|
|
1
1
|
import { Chain } from '../sdk/types'
|
|
2
2
|
import { WalletServicesOptions } from '../sdk/WalletServices.interfaces'
|
|
3
3
|
import { randomBytesHex } from '../utility/utilityHelpers'
|
|
4
|
+
import { ChaintracksClientApi } from './chaintracker/chaintracks/Api/ChaintracksClientApi'
|
|
4
5
|
import { ChaintracksServiceClient } from './chaintracker/chaintracks/ChaintracksServiceClient'
|
|
5
6
|
|
|
6
7
|
export function createDefaultWalletServicesOptions(
|
|
7
8
|
chain: Chain,
|
|
8
9
|
arcCallbackUrl?: string,
|
|
9
10
|
arcCallbackToken?: string,
|
|
10
|
-
|
|
11
|
+
taalArcApiKey?: string,
|
|
12
|
+
gorillaPoolArcApiKey?: string,
|
|
13
|
+
bitailsApiKey?: string,
|
|
14
|
+
deploymentId?: string,
|
|
15
|
+
chaintracks?: ChaintracksClientApi
|
|
11
16
|
): WalletServicesOptions {
|
|
12
|
-
|
|
13
|
-
const taalApiKey =
|
|
14
|
-
arcApiKey || chain === 'main'
|
|
15
|
-
? 'mainnet_9596de07e92300c6287e4393594ae39c' // no plan
|
|
16
|
-
: 'testnet_0e6cf72133b43ea2d7861da2a38684e3' // personal "starter" key
|
|
17
|
+
deploymentId ||= `wallet-toolbox-${randomBytesHex(16)}`
|
|
17
18
|
|
|
18
19
|
//const chaintracksUrl = `https://npm-registry.babbage.systems:${chain === 'main' ? 8084 : 8083}`
|
|
19
20
|
const chaintracksUrl = `https://${chain}net-chaintracks.babbage.systems`
|
|
21
|
+
// The mainnet endpoint is always used since these are fiat exchange rates,
|
|
22
|
+
// independent of the chain being used.
|
|
23
|
+
const chaintracksFiatExchangeRatesUrl = `https://mainnet-chaintracks.babbage.systems/getFiatExchangeRates`
|
|
24
|
+
|
|
25
|
+
chaintracks ||= new ChaintracksServiceClient(chain, chaintracksUrl)
|
|
20
26
|
|
|
21
27
|
const o: WalletServicesOptions = {
|
|
22
28
|
chain,
|
|
23
|
-
taalApiKey,
|
|
29
|
+
taalApiKey: undefined,
|
|
24
30
|
bsvExchangeRate: {
|
|
25
|
-
timestamp: new Date('
|
|
31
|
+
timestamp: new Date('2025-08-31'),
|
|
26
32
|
base: 'USD',
|
|
27
|
-
rate:
|
|
33
|
+
rate: 26.17
|
|
28
34
|
},
|
|
29
35
|
bsvUpdateMsecs: 1000 * 60 * 15, // 15 minutes
|
|
30
36
|
fiatExchangeRates: {
|
|
31
|
-
timestamp: new Date('
|
|
37
|
+
timestamp: new Date('2025-08-31'),
|
|
32
38
|
base: 'USD',
|
|
33
39
|
rates: {
|
|
34
40
|
USD: 1,
|
|
35
|
-
GBP: 0.
|
|
36
|
-
EUR: 0.
|
|
41
|
+
GBP: 0.7528,
|
|
42
|
+
EUR: 0.8558
|
|
37
43
|
}
|
|
38
44
|
},
|
|
39
45
|
fiatUpdateMsecs: 1000 * 60 * 60 * 24, // 24 hours
|
|
40
|
-
disableMapiCallback: true, // Rely on WalletMonitor by default.
|
|
46
|
+
disableMapiCallback: true, // MAPI callback's are deprecated. Rely on WalletMonitor by default.
|
|
41
47
|
exchangeratesapiKey: 'bd539d2ff492bcb5619d5f27726a766f',
|
|
42
|
-
chaintracksFiatExchangeRatesUrl
|
|
43
|
-
chaintracks
|
|
48
|
+
chaintracksFiatExchangeRatesUrl,
|
|
49
|
+
chaintracks,
|
|
44
50
|
arcUrl: arcDefaultUrl(chain),
|
|
45
51
|
arcConfig: {
|
|
46
|
-
apiKey:
|
|
52
|
+
apiKey: taalArcApiKey ?? undefined,
|
|
47
53
|
deploymentId,
|
|
48
54
|
callbackUrl: arcCallbackUrl ?? undefined,
|
|
49
55
|
callbackToken: arcCallbackToken ?? undefined
|
|
50
56
|
},
|
|
51
57
|
arcGorillaPoolUrl: arcGorillaPoolUrl(chain),
|
|
52
58
|
arcGorillaPoolConfig: {
|
|
53
|
-
apiKey:
|
|
59
|
+
apiKey: gorillaPoolArcApiKey ?? undefined,
|
|
54
60
|
deploymentId,
|
|
55
61
|
callbackUrl: arcCallbackUrl ?? undefined,
|
|
56
62
|
callbackToken: arcCallbackToken ?? undefined
|
|
57
|
-
}
|
|
63
|
+
},
|
|
64
|
+
bitailsApiKey
|
|
58
65
|
}
|
|
59
66
|
return o
|
|
60
67
|
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { _tu } from '../../../../test/utils/TestUtilsWalletStorage'
|
|
2
|
+
import { WalletServicesOptions } from '../../../sdk/WalletServices.interfaces'
|
|
3
|
+
import { createDefaultWalletServicesOptions } from '../../createDefaultWalletServicesOptions'
|
|
4
|
+
import { updateExchangeratesapi } from '../exchangeRates'
|
|
5
|
+
|
|
6
|
+
describe('exchangeRates tests', () => {
|
|
7
|
+
jest.setTimeout(99999999)
|
|
8
|
+
|
|
9
|
+
test('0', async () => {
|
|
10
|
+
if (_tu.noEnv('main')) return
|
|
11
|
+
const o = createDefaultWalletServicesOptions('main')
|
|
12
|
+
// The default api key for this service is severely use limited,
|
|
13
|
+
// do not run this test aggressively. Without substituting your own key.
|
|
14
|
+
// o.exchangeratesapiKey = 'YOUR_API_KEY'
|
|
15
|
+
const r = await updateExchangeratesapi(['EUR', 'GBP', 'USD'], o)
|
|
16
|
+
expect(r).toBeDefined()
|
|
17
|
+
})
|
|
18
|
+
})
|
|
@@ -11,7 +11,7 @@ describe('operations.man tests', () => {
|
|
|
11
11
|
|
|
12
12
|
test('0 review and release all production invalid change utxos', async () => {
|
|
13
13
|
const { env, storage } = await _tu.createMainReviewSetup()
|
|
14
|
-
const users = await storage.findUsers({ partial: {
|
|
14
|
+
const users = await storage.findUsers({ partial: {} })
|
|
15
15
|
const withInvalid: Record<number, { user: TableUser; outputs: WalletOutput[]; total: number }> = {}
|
|
16
16
|
const vargs: ValidListOutputsArgs = {
|
|
17
17
|
basket: specOpInvalidChange,
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { Chaintracks } from './Chaintracks';
|
|
2
|
-
import { IncomingMessage, Server, ServerResponse } from 'http';
|
|
3
|
-
import { Chain } from '../../../sdk/types';
|
|
4
|
-
import { Services } from '../../Services';
|
|
5
|
-
export interface ChaintracksServiceOptions {
|
|
6
|
-
chain: Chain;
|
|
7
|
-
/**
|
|
8
|
-
* prepended to the path of each registered service endpoint
|
|
9
|
-
*/
|
|
10
|
-
routingPrefix: string;
|
|
11
|
-
/**
|
|
12
|
-
* Defaults to default configured Chaintracks instance with NoDb storage.
|
|
13
|
-
*/
|
|
14
|
-
chaintracks?: Chaintracks;
|
|
15
|
-
services?: Services;
|
|
16
|
-
port?: number;
|
|
17
|
-
}
|
|
18
|
-
export declare class ChaintracksService {
|
|
19
|
-
static createChaintracksServiceOptions(chain: Chain): ChaintracksServiceOptions;
|
|
20
|
-
chain: Chain;
|
|
21
|
-
options: ChaintracksServiceOptions;
|
|
22
|
-
port?: number;
|
|
23
|
-
chaintracks: Chaintracks;
|
|
24
|
-
services: Services;
|
|
25
|
-
server?: Server<typeof IncomingMessage, typeof ServerResponse>;
|
|
26
|
-
constructor(options: ChaintracksServiceOptions);
|
|
27
|
-
stopJsonRpcServer(): Promise<void>;
|
|
28
|
-
startJsonRpcServer(port?: number): Promise<void>;
|
|
29
|
-
}
|
|
30
|
-
//# sourceMappingURL=ChaintracksService.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ChaintracksService.d.ts","sourceRoot":"","sources":["../../../../../../src/services/chaintracker/chaintracks/ChaintracksService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAE3C,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,MAAM,CAAA;AAG9D,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAE1C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAMzC,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,KAAK,CAAA;IACZ;;OAEG;IACH,aAAa,EAAE,MAAM,CAAA;IACrB;;OAEG;IACH,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,qBAAa,kBAAkB;IAC7B,MAAM,CAAC,+BAA+B,CAAC,KAAK,EAAE,KAAK,GAAG,yBAAyB;IAQ/E,KAAK,EAAE,KAAK,CAAA;IACZ,OAAO,EAAE,yBAAyB,CAAA;IAClC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,WAAW,CAAA;IACxB,QAAQ,EAAE,QAAQ,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC,OAAO,eAAe,EAAE,OAAO,cAAc,CAAC,CAAA;gBAElD,OAAO,EAAE,yBAAyB;IAgBxC,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAKlC,kBAAkB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CA4HvD"}
|
|
@@ -1,149 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.ChaintracksService = void 0;
|
|
7
|
-
const Chaintracks_1 = require("./Chaintracks");
|
|
8
|
-
const express_1 = __importDefault(require("express"));
|
|
9
|
-
const body_parser_1 = __importDefault(require("body-parser"));
|
|
10
|
-
const createDefaultNoDbChaintracksOptions_1 = require("./createDefaultNoDbChaintracksOptions");
|
|
11
|
-
const Services_1 = require("../../Services");
|
|
12
|
-
const sdk_1 = require("../../../sdk");
|
|
13
|
-
const utilityHelpers_1 = require("../../../utility/utilityHelpers");
|
|
14
|
-
class ChaintracksService {
|
|
15
|
-
static createChaintracksServiceOptions(chain) {
|
|
16
|
-
const options = {
|
|
17
|
-
chain,
|
|
18
|
-
routingPrefix: ''
|
|
19
|
-
};
|
|
20
|
-
return options;
|
|
21
|
-
}
|
|
22
|
-
constructor(options) {
|
|
23
|
-
this.options = { ...options };
|
|
24
|
-
this.port = options.port;
|
|
25
|
-
this.chain = options.chain;
|
|
26
|
-
this.chaintracks = options.chaintracks || new Chaintracks_1.Chaintracks((0, createDefaultNoDbChaintracksOptions_1.createNoDbChaintracksOptions)(this.chain));
|
|
27
|
-
this.services = options.services || new Services_1.Services(this.chain);
|
|
28
|
-
// Prevent recursion...
|
|
29
|
-
this.services.updateFiatExchangeRateServices.remove('ChaintracksService');
|
|
30
|
-
if (this.chaintracks.chain !== this.chain || this.services.chain !== this.chain) {
|
|
31
|
-
throw new sdk_1.WERR_INVALID_PARAMETER('chain', `All components (chaintracks and services) must be on chain ${this.chain}`);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
async stopJsonRpcServer() {
|
|
35
|
-
var _a, _b;
|
|
36
|
-
(_a = this.server) === null || _a === void 0 ? void 0 : _a.close();
|
|
37
|
-
await ((_b = this.chaintracks) === null || _b === void 0 ? void 0 : _b.destroy());
|
|
38
|
-
}
|
|
39
|
-
async startJsonRpcServer(port) {
|
|
40
|
-
await this.chaintracks.makeAvailable();
|
|
41
|
-
port || (port = this.port || 3011);
|
|
42
|
-
this.port = port;
|
|
43
|
-
const app = (0, express_1.default)();
|
|
44
|
-
app.use(body_parser_1.default.json());
|
|
45
|
-
// This allows the API to be used when CORS is enforced
|
|
46
|
-
app.use((req, res, next) => {
|
|
47
|
-
res.header('Access-Control-Allow-Origin', '*');
|
|
48
|
-
res.header('Access-Control-Allow-Headers', '*');
|
|
49
|
-
res.header('Access-Control-Allow-Methods', '*');
|
|
50
|
-
res.header('Access-Control-Expose-Headers', '*');
|
|
51
|
-
res.header('Access-Control-Allow-Private-Network', 'true');
|
|
52
|
-
if (req.method === 'OPTIONS') {
|
|
53
|
-
res.sendStatus(200);
|
|
54
|
-
}
|
|
55
|
-
else {
|
|
56
|
-
next();
|
|
57
|
-
}
|
|
58
|
-
});
|
|
59
|
-
const handleErr = (err, res) => {
|
|
60
|
-
res.status(500).json({
|
|
61
|
-
status: 'error',
|
|
62
|
-
code: 'ERR_INTERNAL',
|
|
63
|
-
description: (err === null || err === void 0 ? void 0 : err.message) || 'An internal error has occurred.'
|
|
64
|
-
});
|
|
65
|
-
};
|
|
66
|
-
const appGetVoid = (path, action, noCache = false) => {
|
|
67
|
-
app['get'](this.options.routingPrefix + path, async (req, res) => {
|
|
68
|
-
if (noCache) {
|
|
69
|
-
res.setHeader('Cache-Control', 'no-cache, no-store, must-revalidate');
|
|
70
|
-
res.setHeader('Pragma', 'no-cache');
|
|
71
|
-
res.setHeader('Expires', '0');
|
|
72
|
-
}
|
|
73
|
-
try {
|
|
74
|
-
console.log(`request ${path}`);
|
|
75
|
-
await action(req.query);
|
|
76
|
-
res.status(200).json({ status: 'success' });
|
|
77
|
-
}
|
|
78
|
-
catch (err) {
|
|
79
|
-
handleErr(err, res);
|
|
80
|
-
}
|
|
81
|
-
});
|
|
82
|
-
};
|
|
83
|
-
const appGet = (path, action, noCache = false) => {
|
|
84
|
-
app['get'](this.options.routingPrefix + path, async (req, res) => {
|
|
85
|
-
if (noCache) {
|
|
86
|
-
res.setHeader('Cache-Control', 'no-cache, no-store, must-revalidate');
|
|
87
|
-
res.setHeader('Pragma', 'no-cache');
|
|
88
|
-
res.setHeader('Expires', '0');
|
|
89
|
-
}
|
|
90
|
-
try {
|
|
91
|
-
const r = await action(req.query);
|
|
92
|
-
console.log('request', path, JSON.stringify(req.query), '->', JSON.stringify(r));
|
|
93
|
-
res.status(200).json({ status: 'success', value: r });
|
|
94
|
-
}
|
|
95
|
-
catch (err) {
|
|
96
|
-
console.log(`request ${path} -> error`);
|
|
97
|
-
handleErr(err, res);
|
|
98
|
-
}
|
|
99
|
-
});
|
|
100
|
-
};
|
|
101
|
-
const appPostVoid = (path, action) => {
|
|
102
|
-
app['post'](this.options.routingPrefix + path, async (req, res) => {
|
|
103
|
-
try {
|
|
104
|
-
console.log(`request POST ${path}`);
|
|
105
|
-
await action(req.body);
|
|
106
|
-
res.status(200).json({ status: 'success' });
|
|
107
|
-
}
|
|
108
|
-
catch (err) {
|
|
109
|
-
handleErr(err, res);
|
|
110
|
-
}
|
|
111
|
-
});
|
|
112
|
-
};
|
|
113
|
-
appGet('/getChain', async () => await this.chaintracks.getChain());
|
|
114
|
-
appGet('/getInfo', async (q) => {
|
|
115
|
-
if (q.wait)
|
|
116
|
-
await (0, utilityHelpers_1.wait)(Number(q.wait));
|
|
117
|
-
const r = await this.chaintracks.getInfo();
|
|
118
|
-
if (q.wait)
|
|
119
|
-
r['wait'] = q.wait;
|
|
120
|
-
return r;
|
|
121
|
-
}, true);
|
|
122
|
-
appGet('/getFiatExchangeRates', async () => {
|
|
123
|
-
// update if needed
|
|
124
|
-
await this.services.getFiatExchangeRate('GBP');
|
|
125
|
-
// return current values
|
|
126
|
-
return this.services.options.fiatExchangeRates;
|
|
127
|
-
}, true);
|
|
128
|
-
appPostVoid('/addHeaderHex', async (header) => {
|
|
129
|
-
await this.chaintracks.addHeader(header);
|
|
130
|
-
});
|
|
131
|
-
appGet('/getPresentHeight', async () => await this.chaintracks.getPresentHeight(), true);
|
|
132
|
-
appGet('/findChainTipHashHex', async () => (await this.chaintracks.findChainTipHash()) || '', true);
|
|
133
|
-
appGet('/findChainTipHeaderHex', async () => await this.chaintracks.findChainTipHeader(), true);
|
|
134
|
-
appGet('/findHeaderHexForHeight', async (q) => {
|
|
135
|
-
return await this.chaintracks.findHeaderForHeight(Number(q.height));
|
|
136
|
-
});
|
|
137
|
-
appGet('/findHeaderHexForBlockHash', async (q) => {
|
|
138
|
-
return await this.chaintracks.findLiveHeaderForBlockHash(q.hash);
|
|
139
|
-
});
|
|
140
|
-
appGet('/getHeaders', async (q) => {
|
|
141
|
-
return await this.chaintracks.getHeaders(Number(q.height), Number(q.count));
|
|
142
|
-
});
|
|
143
|
-
this.server = app.listen(this.port, () => {
|
|
144
|
-
console.log(`ChaintracksService listening on port ${this.port}`);
|
|
145
|
-
});
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
exports.ChaintracksService = ChaintracksService;
|
|
149
|
-
//# sourceMappingURL=ChaintracksService.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ChaintracksService.js","sourceRoot":"","sources":["../../../../../../src/services/chaintracker/chaintracks/ChaintracksService.ts"],"names":[],"mappings":";;;;;;AAAA,+CAA2C;AAG3C,sDAA6B;AAC7B,8DAAoC;AAEpC,+FAAoF;AACpF,6CAAyC;AACzC,sCAAwE;AAExE,oEAAsD;AAiBtD,MAAa,kBAAkB;IAC7B,MAAM,CAAC,+BAA+B,CAAC,KAAY;QACjD,MAAM,OAAO,GAA8B;YACzC,KAAK;YACL,aAAa,EAAE,EAAE;SAClB,CAAA;QACD,OAAO,OAAO,CAAA;IAChB,CAAC;IASD,YAAY,OAAkC;QAC5C,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,CAAA;QAC7B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;QACxB,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1B,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,IAAI,yBAAW,CAAC,IAAA,kEAA4B,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;QACnG,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,mBAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC5D,uBAAuB;QACvB,IAAI,CAAC,QAAQ,CAAC,8BAA8B,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAA;QACzE,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;YAChF,MAAM,IAAI,4BAAsB,CAC9B,OAAO,EACP,8DAA8D,IAAI,CAAC,KAAK,EAAE,CAC3E,CAAA;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,iBAAiB;;QACrB,MAAA,IAAI,CAAC,MAAM,0CAAE,KAAK,EAAE,CAAA;QACpB,MAAM,CAAA,MAAA,IAAI,CAAC,WAAW,0CAAE,OAAO,EAAE,CAAA,CAAA;IACnC,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,IAAa;QACpC,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,CAAA;QAEtC,IAAI,KAAJ,IAAI,GAAK,IAAI,CAAC,IAAI,IAAI,IAAI,EAAA;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAEhB,MAAM,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAA;QACrB,GAAG,CAAC,GAAG,CAAC,qBAAU,CAAC,IAAI,EAAE,CAAC,CAAA;QAE1B,uDAAuD;QACvD,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YACzB,GAAG,CAAC,MAAM,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAA;YAC9C,GAAG,CAAC,MAAM,CAAC,8BAA8B,EAAE,GAAG,CAAC,CAAA;YAC/C,GAAG,CAAC,MAAM,CAAC,8BAA8B,EAAE,GAAG,CAAC,CAAA;YAC/C,GAAG,CAAC,MAAM,CAAC,+BAA+B,EAAE,GAAG,CAAC,CAAA;YAChD,GAAG,CAAC,MAAM,CAAC,sCAAsC,EAAE,MAAM,CAAC,CAAA;YAC1D,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC7B,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;YACrB,CAAC;iBAAM,CAAC;gBACN,IAAI,EAAE,CAAA;YACR,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,MAAM,SAAS,GAAG,CAAC,GAAQ,EAAE,GAAQ,EAAE,EAAE;YACvC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,cAAc;gBACpB,WAAW,EAAE,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,KAAI,iCAAiC;aAC/D,CAAC,CAAA;QACJ,CAAC,CAAA;QAED,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,MAAiC,EAAE,OAAO,GAAG,KAAK,EAAE,EAAE;YACtF,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,GAAG,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;gBAC/D,IAAI,OAAO,EAAE,CAAC;oBACZ,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,qCAAqC,CAAC,CAAA;oBACrE,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAA;oBACnC,GAAG,CAAC,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,CAAA;gBAC/B,CAAC;gBACD,IAAI,CAAC;oBACH,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC,CAAA;oBAC9B,MAAM,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;oBACvB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAA;gBAC7C,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;gBACrB,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAA;QAED,MAAM,MAAM,GAAG,CAAI,IAAY,EAAE,MAA8B,EAAE,OAAO,GAAG,KAAK,EAAE,EAAE;YAClF,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,GAAG,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;gBAC/D,IAAI,OAAO,EAAE,CAAC;oBACZ,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,qCAAqC,CAAC,CAAA;oBACrE,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAA;oBACnC,GAAG,CAAC,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,CAAA;gBAC/B,CAAC;gBACD,IAAI,CAAC;oBACH,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;oBACjC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;oBAChF,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAA;gBACvD,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,WAAW,CAAC,CAAA;oBACvC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;gBACrB,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAA;QAED,MAAM,WAAW,GAAG,CAAI,IAAY,EAAE,MAA+B,EAAE,EAAE;YACvE,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,GAAG,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;gBAChE,IAAI,CAAC;oBACH,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAA;oBACnC,MAAM,MAAM,CAAI,GAAG,CAAC,IAAI,CAAC,CAAA;oBACzB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAA;gBAC7C,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;gBACrB,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAA;QAED,MAAM,CAAQ,WAAW,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAA;QACzE,MAAM,CACJ,UAAU,EACV,KAAK,EAAC,CAAC,EAAC,EAAE;YACR,IAAI,CAAC,CAAC,IAAI;gBAAE,MAAM,IAAA,qBAAI,EAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;YACtC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAA;YAC1C,IAAI,CAAC,CAAC,IAAI;gBAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAA;YAC9B,OAAO,CAAC,CAAA;QACV,CAAC,EACD,IAAI,CACL,CAAA;QAED,MAAM,CACJ,uBAAuB,EACvB,KAAK,IAAI,EAAE;YACT,mBAAmB;YACnB,MAAM,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAA;YAC9C,wBAAwB;YACxB,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAA;QAChD,CAAC,EACD,IAAI,CACL,CAAA;QAED,WAAW,CAAC,eAAe,EAAE,KAAK,EAAE,MAAuB,EAAE,EAAE;YAC7D,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;QAC1C,CAAC,CAAC,CAAA;QAEF,MAAM,CAAS,mBAAmB,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,EAAE,IAAI,CAAC,CAAA;QAChG,MAAM,CAAS,sBAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,CAAA;QAC3G,MAAM,CAAc,wBAAwB,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE,EAAE,IAAI,CAAC,CAAA;QAE5G,MAAM,CAA0B,yBAAyB,EAAE,KAAK,EAAC,CAAC,EAAC,EAAE;YACnE,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;QACrE,CAAC,CAAC,CAAA;QACF,MAAM,CAA0B,4BAA4B,EAAE,KAAK,EAAC,CAAC,EAAC,EAAE;YACtE,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,0BAA0B,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QAClE,CAAC,CAAC,CAAA;QAEF,MAAM,CAAS,aAAa,EAAE,KAAK,EAAC,CAAC,EAAC,EAAE;YACtC,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;QAC7E,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE;YACvC,OAAO,CAAC,GAAG,CAAC,wCAAwC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QAClE,CAAC,CAAC,CAAA;IACJ,CAAC;CACF;AAjKD,gDAiKC"}
|
package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.d.ts
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { Chain } from '../../../../sdk';
|
|
2
|
-
import { BlockHeader } from '../Api/BlockHeaderApi';
|
|
3
|
-
import { BulkIngestorBase } from './BulkIngestorBase';
|
|
4
|
-
import { HeightRange, HeightRanges } from '../util/HeightRange';
|
|
5
|
-
import { BulkIngestorWhatsOnChainOptions } from './BulkIngestorWhatsOnChainCdn';
|
|
6
|
-
import { StopListenerToken } from './WhatsOnChainIngestorWs';
|
|
7
|
-
import { WhatsOnChainServices } from './WhatsOnChainServices';
|
|
8
|
-
export declare class BulkIngestorWhatsOnChainWs extends BulkIngestorBase {
|
|
9
|
-
/**
|
|
10
|
-
*
|
|
11
|
-
* @param chain
|
|
12
|
-
* @param localCachePath defaults to './data/ingest_whatsonchain_headers'
|
|
13
|
-
* @returns
|
|
14
|
-
*/
|
|
15
|
-
static createBulkIngestorWhatsOnChainOptions(chain: Chain): BulkIngestorWhatsOnChainOptions;
|
|
16
|
-
idleWait: number;
|
|
17
|
-
woc: WhatsOnChainServices;
|
|
18
|
-
stopOldListenersToken: StopListenerToken;
|
|
19
|
-
constructor(options: BulkIngestorWhatsOnChainOptions);
|
|
20
|
-
getPresentHeight(): Promise<number | undefined>;
|
|
21
|
-
fetchHeaders(before: HeightRanges, fetchRange: HeightRange, bulkRange: HeightRange, priorLiveHeaders: BlockHeader[]): Promise<BlockHeader[]>;
|
|
22
|
-
}
|
|
23
|
-
//# sourceMappingURL=BulkIngestorWhatsOnChainWs.d.ts.map
|
package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BulkIngestorWhatsOnChainWs.d.ts","sourceRoot":"","sources":["../../../../../../../src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAEvC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAC/D,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAA;AAC/E,OAAO,EAAE,iBAAiB,EAA0B,MAAM,0BAA0B,CAAA;AACpF,OAAO,EAAgC,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAE3F,qBAAa,0BAA2B,SAAQ,gBAAgB;IAC9D;;;;;OAKG;IACH,MAAM,CAAC,qCAAqC,CAAC,KAAK,EAAE,KAAK,GAAG,+BAA+B;IAS3F,QAAQ,EAAE,MAAM,CAAA;IAChB,GAAG,EAAE,oBAAoB,CAAA;IACzB,qBAAqB,EAAE,iBAAiB,CAAsB;gBAElD,OAAO,EAAE,+BAA+B;IAMrC,gBAAgB,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAMxD,YAAY,CAChB,MAAM,EAAE,YAAY,EACpB,UAAU,EAAE,WAAW,EACvB,SAAS,EAAE,WAAW,EACtB,gBAAgB,EAAE,WAAW,EAAE,GAC9B,OAAO,CAAC,WAAW,EAAE,CAAC;CAiC1B"}
|
package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js
DELETED
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BulkIngestorWhatsOnChainWs = void 0;
|
|
4
|
-
const utilityHelpers_1 = require("../../../../utility/utilityHelpers");
|
|
5
|
-
const BulkIngestorBase_1 = require("./BulkIngestorBase");
|
|
6
|
-
const WhatsOnChainIngestorWs_1 = require("./WhatsOnChainIngestorWs");
|
|
7
|
-
const WhatsOnChainServices_1 = require("./WhatsOnChainServices");
|
|
8
|
-
class BulkIngestorWhatsOnChainWs extends BulkIngestorBase_1.BulkIngestorBase {
|
|
9
|
-
/**
|
|
10
|
-
*
|
|
11
|
-
* @param chain
|
|
12
|
-
* @param localCachePath defaults to './data/ingest_whatsonchain_headers'
|
|
13
|
-
* @returns
|
|
14
|
-
*/
|
|
15
|
-
static createBulkIngestorWhatsOnChainOptions(chain) {
|
|
16
|
-
const options = {
|
|
17
|
-
...WhatsOnChainServices_1.WhatsOnChainServices.createWhatsOnChainServicesOptions(chain),
|
|
18
|
-
...BulkIngestorBase_1.BulkIngestorBase.createBulkIngestorBaseOptions(chain),
|
|
19
|
-
idleWait: 5000
|
|
20
|
-
};
|
|
21
|
-
return options;
|
|
22
|
-
}
|
|
23
|
-
constructor(options) {
|
|
24
|
-
super(options);
|
|
25
|
-
this.stopOldListenersToken = { stop: undefined };
|
|
26
|
-
this.idleWait = options.idleWait || 5000;
|
|
27
|
-
this.woc = new WhatsOnChainServices_1.WhatsOnChainServices(options);
|
|
28
|
-
}
|
|
29
|
-
async getPresentHeight() {
|
|
30
|
-
const presentHeight = await this.woc.getChainTipHeight();
|
|
31
|
-
(0, utilityHelpers_1.logger)(`presentHeight=${presentHeight}`);
|
|
32
|
-
return presentHeight;
|
|
33
|
-
}
|
|
34
|
-
async fetchHeaders(before, fetchRange, bulkRange, priorLiveHeaders) {
|
|
35
|
-
const oldHeaders = [];
|
|
36
|
-
const errors = [];
|
|
37
|
-
const enqueue = header => {
|
|
38
|
-
oldHeaders.push(header);
|
|
39
|
-
};
|
|
40
|
-
const error = (code, message) => {
|
|
41
|
-
errors.push({ code, message, count: errors.length });
|
|
42
|
-
return false;
|
|
43
|
-
};
|
|
44
|
-
const ok = await (0, WhatsOnChainIngestorWs_1.WocHeadersBulkListener)(fetchRange.minHeight, fetchRange.maxHeight, enqueue, error, this.stopOldListenersToken, this.chain, this.idleWait);
|
|
45
|
-
let liveHeaders = [];
|
|
46
|
-
if (ok) {
|
|
47
|
-
liveHeaders = await this.storage().addBulkHeaders(oldHeaders, bulkRange, priorLiveHeaders);
|
|
48
|
-
}
|
|
49
|
-
if (errors.length > 0) {
|
|
50
|
-
const errorMessages = errors.map(e => `(${e.code}) ${e.message} (${e.count})`).join('\n');
|
|
51
|
-
(0, utilityHelpers_1.logger)(`Errors during WhatsOnChain ingestion:\n${errorMessages}`);
|
|
52
|
-
}
|
|
53
|
-
return liveHeaders;
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
exports.BulkIngestorWhatsOnChainWs = BulkIngestorWhatsOnChainWs;
|
|
57
|
-
//# sourceMappingURL=BulkIngestorWhatsOnChainWs.js.map
|
package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BulkIngestorWhatsOnChainWs.js","sourceRoot":"","sources":["../../../../../../../src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.ts"],"names":[],"mappings":";;;AACA,uEAA2D;AAE3D,yDAAqD;AAGrD,qEAAoF;AACpF,iEAA2F;AAE3F,MAAa,0BAA2B,SAAQ,mCAAgB;IAC9D;;;;;OAKG;IACH,MAAM,CAAC,qCAAqC,CAAC,KAAY;QACvD,MAAM,OAAO,GAAoC;YAC/C,GAAG,2CAAoB,CAAC,iCAAiC,CAAC,KAAK,CAAC;YAChE,GAAG,mCAAgB,CAAC,6BAA6B,CAAC,KAAK,CAAC;YACxD,QAAQ,EAAE,IAAI;SACf,CAAA;QACD,OAAO,OAAO,CAAA;IAChB,CAAC;IAMD,YAAY,OAAwC;QAClD,KAAK,CAAC,OAAO,CAAC,CAAA;QAHhB,0BAAqB,GAAsB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAA;QAI5D,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAA;QACxC,IAAI,CAAC,GAAG,GAAG,IAAI,2CAAoB,CAAC,OAAO,CAAC,CAAA;IAC9C,CAAC;IAEQ,KAAK,CAAC,gBAAgB;QAC7B,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAA;QACxD,IAAA,uBAAM,EAAC,iBAAiB,aAAa,EAAE,CAAC,CAAA;QACxC,OAAO,aAAa,CAAA;IACtB,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,MAAoB,EACpB,UAAuB,EACvB,SAAsB,EACtB,gBAA+B;QAE/B,MAAM,UAAU,GAAkB,EAAE,CAAA;QACpC,MAAM,MAAM,GAAuD,EAAE,CAAA;QACrE,MAAM,OAAO,GAAmB,MAAM,CAAC,EAAE;YACvC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACzB,CAAC,CAAA;QACD,MAAM,KAAK,GAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;YAC5C,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;YACpD,OAAO,KAAK,CAAA;QACd,CAAC,CAAA;QAED,MAAM,EAAE,GAAG,MAAM,IAAA,+CAAsB,EACrC,UAAU,CAAC,SAAS,EACpB,UAAU,CAAC,SAAS,EACpB,OAAO,EACP,KAAK,EACL,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,QAAQ,CACd,CAAA;QAED,IAAI,WAAW,GAAkB,EAAE,CAAA;QACnC,IAAI,EAAE,EAAE,CAAC;YACP,WAAW,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC,cAAc,CAAC,UAAU,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAA;QAC5F,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACzF,IAAA,uBAAM,EAAC,0CAA0C,aAAa,EAAE,CAAC,CAAA;QACnE,CAAC;QAED,OAAO,WAAW,CAAA;IACpB,CAAC;CACF;AAtED,gEAsEC"}
|
package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { BlockHeader, Chain } from '../../../../sdk';
|
|
2
|
-
import { LiveIngestorBase } from './LiveIngestorBase';
|
|
3
|
-
import { LiveIngestorWhatsOnChainOptions } from './LiveIngestorWhatsOnChainPoll';
|
|
4
|
-
import { StopListenerToken } from './WhatsOnChainIngestorWs';
|
|
5
|
-
import { WhatsOnChainServices } from './WhatsOnChainServices';
|
|
6
|
-
export declare class LiveIngestorWhatsOnChainWs extends LiveIngestorBase {
|
|
7
|
-
static createLiveIngestorWhatsOnChainOptions(chain: Chain): LiveIngestorWhatsOnChainOptions;
|
|
8
|
-
idleWait: number;
|
|
9
|
-
woc: WhatsOnChainServices;
|
|
10
|
-
stopNewListenersToken: StopListenerToken;
|
|
11
|
-
constructor(options: LiveIngestorWhatsOnChainOptions);
|
|
12
|
-
getHeaderByHash(hash: string): Promise<BlockHeader | undefined>;
|
|
13
|
-
startListening(liveHeaders: BlockHeader[]): Promise<void>;
|
|
14
|
-
stopListening(): void;
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=LiveIngestorWhatsOnChainWs.d.ts.map
|
package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LiveIngestorWhatsOnChainWs.d.ts","sourceRoot":"","sources":["../../../../../../../src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,+BAA+B,EAAE,MAAM,gCAAgC,CAAA;AAChF,OAAO,EAAE,iBAAiB,EAA0B,MAAM,0BAA0B,CAAA;AACpF,OAAO,EAAgC,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAE3F,qBAAa,0BAA2B,SAAQ,gBAAgB;IAC9D,MAAM,CAAC,qCAAqC,CAAC,KAAK,EAAE,KAAK,GAAG,+BAA+B;IAS3F,QAAQ,EAAE,MAAM,CAAA;IAChB,GAAG,EAAE,oBAAoB,CAAA;IACzB,qBAAqB,EAAE,iBAAiB,CAAsB;gBAElD,OAAO,EAAE,+BAA+B;IAM9C,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAK/D,cAAc,CAAC,WAAW,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAwB/D,aAAa,IAAI,IAAI;CAGtB"}
|