@subql/node-stellar 2.12.1 → 2.12.2-0
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/dist/.tsbuildinfo +1 -1
- package/dist/configure/SubqueryProject.d.ts +19 -19
- package/dist/configure/SubqueryProject.js +49 -88
- package/dist/configure/SubqueryProject.js.map +1 -1
- package/dist/configure/configure.module.d.ts +3 -6
- package/dist/configure/configure.module.js +22 -89
- package/dist/configure/configure.module.js.map +1 -1
- package/dist/indexer/blockDispatcher/block-dispatcher.service.d.ts +4 -4
- package/dist/indexer/blockDispatcher/block-dispatcher.service.js +6 -5
- package/dist/indexer/blockDispatcher/block-dispatcher.service.js.map +1 -1
- package/dist/indexer/blockDispatcher/worker-block-dispatcher.service.d.ts +4 -4
- package/dist/indexer/blockDispatcher/worker-block-dispatcher.service.js +9 -27
- package/dist/indexer/blockDispatcher/worker-block-dispatcher.service.js.map +1 -1
- package/dist/indexer/dictionary.service.d.ts +3 -3
- package/dist/indexer/dictionary.service.js +7 -2
- package/dist/indexer/dictionary.service.js.map +1 -1
- package/dist/indexer/ds-processor.service.d.ts +4 -4
- package/dist/indexer/ds-processor.service.js.map +1 -1
- package/dist/indexer/dynamic-ds.service.d.ts +3 -3
- package/dist/indexer/dynamic-ds.service.js +12 -2
- package/dist/indexer/dynamic-ds.service.js.map +1 -1
- package/dist/indexer/fetch.module.js +13 -10
- package/dist/indexer/fetch.module.js.map +1 -1
- package/dist/indexer/fetch.service.d.ts +12 -8
- package/dist/indexer/fetch.service.js +25 -47
- package/dist/indexer/fetch.service.js.map +1 -1
- package/dist/indexer/fetch.service.spec.js +4 -4
- package/dist/indexer/fetch.service.spec.js.map +1 -1
- package/dist/indexer/indexer.manager.d.ts +2 -2
- package/dist/indexer/indexer.manager.js.map +1 -1
- package/dist/indexer/project.service.d.ts +10 -6
- package/dist/indexer/project.service.js +19 -14
- package/dist/indexer/project.service.js.map +1 -1
- package/dist/indexer/sandbox.service.d.ts +1 -1
- package/dist/indexer/sandbox.service.js +1 -0
- package/dist/indexer/sandbox.service.js.map +1 -1
- package/dist/indexer/unfinalizedBlocks.service.js +24 -0
- package/dist/indexer/unfinalizedBlocks.service.js.map +1 -1
- package/dist/indexer/worker/worker-fetch.module.d.ts +2 -0
- package/dist/indexer/{indexer.module.js → worker/worker-fetch.module.js} +23 -25
- package/dist/indexer/worker/worker-fetch.module.js.map +1 -0
- package/dist/indexer/worker/worker.d.ts +4 -28
- package/dist/indexer/worker/worker.js +8 -71
- package/dist/indexer/worker/worker.js.map +1 -1
- package/dist/indexer/worker/worker.module.js +2 -2
- package/dist/indexer/worker/worker.module.js.map +1 -1
- package/dist/indexer/worker/worker.service.d.ts +11 -13
- package/dist/indexer/worker/worker.service.js +14 -54
- package/dist/indexer/worker/worker.service.js.map +1 -1
- package/dist/indexer/worker/worker.unfinalizedBlocks.service.d.ts +1 -5
- package/dist/indexer/worker/worker.unfinalizedBlocks.service.js +1 -4
- package/dist/indexer/worker/worker.unfinalizedBlocks.service.js.map +1 -1
- package/dist/init.js +2 -1
- package/dist/init.js.map +1 -1
- package/dist/main.js +4 -7
- package/dist/main.js.map +1 -1
- package/dist/stellar/api.connection.d.ts +1 -1
- package/dist/stellar/api.connection.js.map +1 -1
- package/dist/stellar/api.service.stellar.d.ts +4 -6
- package/dist/stellar/api.service.stellar.js +33 -68
- package/dist/stellar/api.service.stellar.js.map +1 -1
- package/dist/stellar/api.service.stellar.spec.d.ts +1 -5
- package/dist/stellar/api.service.stellar.spec.js +7 -6
- package/dist/stellar/api.service.stellar.spec.js.map +1 -1
- package/dist/stellar/api.stellar.js +1 -7
- package/dist/stellar/api.stellar.js.map +1 -1
- package/dist/stellar/soroban.server.spec.js +1 -1
- package/dist/stellar/soroban.server.spec.js.map +1 -1
- package/dist/subcommands/reindex.init.js +1 -2
- package/dist/subcommands/reindex.init.js.map +1 -1
- package/dist/subcommands/reindex.module.js +9 -6
- package/dist/subcommands/reindex.module.js.map +1 -1
- package/dist/subcommands/testing.init.js +2 -4
- package/dist/subcommands/testing.init.js.map +1 -1
- package/dist/subcommands/testing.module.js +9 -7
- package/dist/subcommands/testing.module.js.map +1 -1
- package/dist/subcommands/testing.service.d.ts +7 -4
- package/dist/subcommands/testing.service.js +2 -7
- package/dist/subcommands/testing.service.js.map +1 -1
- package/dist/utils/project.js.map +1 -1
- package/package.json +8 -7
- package/dist/indexer/indexer.module.d.ts +0 -2
- package/dist/indexer/indexer.module.js.map +0 -1
- package/dist/subcommands/mmrMigrate.init.d.ts +0 -2
- package/dist/subcommands/mmrMigrate.init.js +0 -28
- package/dist/subcommands/mmrMigrate.init.js.map +0 -1
- package/dist/subcommands/mmrMigrate.module.d.ts +0 -2
- package/dist/subcommands/mmrMigrate.module.js +0 -28
- package/dist/subcommands/mmrMigrate.module.js.map +0 -1
- package/dist/subcommands/mmrRegenerate.init.d.ts +0 -1
- package/dist/subcommands/mmrRegenerate.init.js +0 -28
- package/dist/subcommands/mmrRegenerate.init.js.map +0 -1
- package/dist/subcommands/mmrRegenerate.module.d.ts +0 -2
- package/dist/subcommands/mmrRegenerate.module.js +0 -30
- package/dist/subcommands/mmrRegenerate.module.js.map +0 -1
- package/dist/subcommands/reindex.service.d.ts +0 -11
- package/dist/subcommands/reindex.service.js +0 -46
- package/dist/subcommands/reindex.service.js.map +0 -1
|
@@ -26,46 +26,28 @@ const SubqueryProject_1 = require("../../configure/SubqueryProject");
|
|
|
26
26
|
const dynamic_ds_service_1 = require("../dynamic-ds.service");
|
|
27
27
|
const unfinalizedBlocks_service_1 = require("../unfinalizedBlocks.service");
|
|
28
28
|
const logger = (0, node_core_1.getLogger)('WorkerBlockDispatcherService');
|
|
29
|
-
async function createIndexerWorker(store, dynamicDsService, unfinalizedBlocksService, connectionPoolState, root) {
|
|
30
|
-
const indexerWorker = node_core_1.Worker.create(path_1.default.resolve(__dirname, '../../../dist/indexer/worker/worker.js'), [
|
|
31
|
-
|
|
32
|
-
'processBlock',
|
|
33
|
-
'fetchBlock',
|
|
34
|
-
'numFetchedBlocks',
|
|
35
|
-
'numFetchingBlocks',
|
|
36
|
-
'getStatus',
|
|
37
|
-
'getMemoryLeft',
|
|
38
|
-
'waitForWorkerBatchSize',
|
|
39
|
-
], Object.assign({ storeGet: store.get.bind(store), storeGetByField: store.getByField.bind(store), storeGetOneByField: store.getOneByField.bind(store), storeSet: store.set.bind(store), storeBulkCreate: store.bulkCreate.bind(store), storeBulkUpdate: store.bulkUpdate.bind(store), storeRemove: store.remove.bind(store), storeBulkRemove: store.bulkRemove.bind(store), dynamicDsCreateDynamicDatasource: dynamicDsService.createDynamicDatasource.bind(dynamicDsService), dynamicDsGetDynamicDatasources: dynamicDsService.getDynamicDatasources.bind(dynamicDsService), unfinalizedBlocksProcess: unfinalizedBlocksService.processUnfinalizedBlockHeader.bind(unfinalizedBlocksService) }, (0, node_core_1.connectionPoolStateHostFunctions)(connectionPoolState)), root);
|
|
40
|
-
await indexerWorker.initWorker();
|
|
29
|
+
async function createIndexerWorker(store, dynamicDsService, unfinalizedBlocksService, connectionPoolState, root, startHeight) {
|
|
30
|
+
const indexerWorker = node_core_1.Worker.create(path_1.default.resolve(__dirname, '../../../dist/indexer/worker/worker.js'), [...node_core_1.baseWorkerFunctions, 'initWorker'], Object.assign(Object.assign(Object.assign(Object.assign({}, (0, node_core_1.storeHostFunctions)(store)), (0, node_core_1.dynamicDsHostFunctions)(dynamicDsService)), { unfinalizedBlocksProcess: unfinalizedBlocksService.processUnfinalizedBlockHeader.bind(unfinalizedBlocksService) }), (0, node_core_1.connectionPoolStateHostFunctions)(connectionPoolState)), root);
|
|
31
|
+
await indexerWorker.initWorker(startHeight);
|
|
41
32
|
return indexerWorker;
|
|
42
33
|
}
|
|
43
34
|
let WorkerBlockDispatcherService = class WorkerBlockDispatcherService extends node_core_1.WorkerBlockDispatcher {
|
|
44
|
-
constructor(nodeConfig, eventEmitter, projectService, smartBatchService, storeService, storeCacheService, poiService, project, dynamicDsService, unfinalizedBlocksSevice, connectionPoolState) {
|
|
45
|
-
super(nodeConfig, eventEmitter, projectService, smartBatchService, storeService, storeCacheService, poiService, project, dynamicDsService, () => createIndexerWorker(storeService.getStore(), dynamicDsService, unfinalizedBlocksSevice, connectionPoolState, project.root));
|
|
35
|
+
constructor(nodeConfig, eventEmitter, projectService, projectUpgradeService, smartBatchService, storeService, storeCacheService, poiService, project, dynamicDsService, unfinalizedBlocksSevice, connectionPoolState) {
|
|
36
|
+
super(nodeConfig, eventEmitter, projectService, projectUpgradeService, smartBatchService, storeService, storeCacheService, poiService, project, dynamicDsService, () => createIndexerWorker(storeService.getStore(), dynamicDsService, unfinalizedBlocksSevice, connectionPoolState, project.root, projectService.startHeight));
|
|
46
37
|
}
|
|
47
38
|
async fetchBlock(worker, height) {
|
|
48
39
|
const start = new Date();
|
|
49
|
-
await worker.fetchBlock(height);
|
|
40
|
+
await worker.fetchBlock(height, null);
|
|
50
41
|
const end = new Date();
|
|
51
|
-
// const waitTime = end.getTime() - start.getTime();
|
|
52
|
-
// if (waitTime > 1000) {
|
|
53
|
-
// logger.info(
|
|
54
|
-
// `Waiting to fetch block ${height}: ${chalk.red(`${waitTime}ms`)}`,
|
|
55
|
-
// );
|
|
56
|
-
// } else if (waitTime > 200) {
|
|
57
|
-
// logger.info(
|
|
58
|
-
// `Waiting to fetch block ${height}: ${chalk.yellow(`${waitTime}ms`)}`,
|
|
59
|
-
// );
|
|
60
|
-
// }
|
|
61
42
|
}
|
|
62
43
|
};
|
|
63
44
|
WorkerBlockDispatcherService = __decorate([
|
|
64
45
|
(0, common_1.Injectable)(),
|
|
65
46
|
__param(2, (0, common_1.Inject)('IProjectService')),
|
|
66
|
-
__param(
|
|
47
|
+
__param(3, (0, common_1.Inject)('IProjectUpgradeService')),
|
|
48
|
+
__param(8, (0, common_1.Inject)('ISubqueryProject')),
|
|
67
49
|
__metadata("design:paramtypes", [node_core_1.NodeConfig,
|
|
68
|
-
event_emitter_1.EventEmitter2, Object, node_core_1.SmartBatchService,
|
|
50
|
+
event_emitter_1.EventEmitter2, Object, Object, node_core_1.SmartBatchService,
|
|
69
51
|
node_core_1.StoreService,
|
|
70
52
|
node_core_1.StoreCacheService,
|
|
71
53
|
node_core_1.PoiService,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-block-dispatcher.service.js","sourceRoot":"","sources":["../../../src/indexer/blockDispatcher/worker-block-dispatcher.service.ts"],"names":[],"mappings":";AAAA,8DAA8D;AAC9D,mCAAmC;;;;;;;;;;;;;;;;;;AAEnC,gDAAwB;AACxB,2CAA2E;AAC3E,yDAAsD;AACtD,
|
|
1
|
+
{"version":3,"file":"worker-block-dispatcher.service.js","sourceRoot":"","sources":["../../../src/indexer/blockDispatcher/worker-block-dispatcher.service.ts"],"names":[],"mappings":";AAAA,8DAA8D;AAC9D,mCAAmC;;;;;;;;;;;;;;;;;;AAEnC,gDAAwB;AACxB,2CAA2E;AAC3E,yDAAsD;AACtD,gDAsB0B;AAE1B,qEAGyC;AAGzC,8DAAyD;AACzD,4EAAwE;AAGxE,MAAM,MAAM,GAAG,IAAA,qBAAS,EAAC,8BAA8B,CAAC,CAAC;AAMzD,KAAK,UAAU,mBAAmB,CAChC,KAAY,EACZ,gBAAqD,EACrD,wBAAwE,EACxE,mBAAqE,EACrE,IAAY,EACZ,WAAmB;IAEnB,MAAM,aAAa,GAAG,kBAAM,CAAC,MAAM,CAIjC,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,wCAAwC,CAAC,EACjE,CAAC,GAAG,+BAAmB,EAAE,YAAY,CAAC,8DAEjC,IAAA,8BAAkB,EAAC,KAAK,CAAC,GACzB,IAAA,kCAAsB,EAAC,gBAAgB,CAAC,KAC3C,wBAAwB,EACtB,wBAAwB,CAAC,6BAA6B,CAAC,IAAI,CACzD,wBAAwB,CACzB,KACA,IAAA,4CAAgC,EAAC,mBAAmB,CAAC,GAE1D,IAAI,CACL,CAAC;IAEF,MAAM,aAAa,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAE5C,OAAO,aAAa,CAAC;AACvB,CAAC;AAGM,IAAM,4BAA4B,GAAlC,MAAM,4BACX,SAAQ,iCAAsD;IAG9D,YACE,UAAsB,EACtB,YAA2B,EAE3B,cAAiD,EAEjD,qBAA6C,EAC7C,iBAAoC,EACpC,YAA0B,EAC1B,iBAAoC,EACpC,UAAsB,EACM,OAAwB,EACpD,gBAAkC,EAClC,uBAAiD,EACjD,mBAAqE;QAErE,KAAK,CACH,UAAU,EACV,YAAY,EACZ,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,UAAU,EACV,OAAO,EACP,gBAAgB,EAChB,GAAG,EAAE,CACH,mBAAmB,CACjB,YAAY,CAAC,QAAQ,EAAE,EACvB,gBAAgB,EAChB,uBAAuB,EACvB,mBAAmB,EACnB,OAAO,CAAC,IAAI,EACZ,cAAc,CAAC,WAAW,CAC3B,CACJ,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,UAAU,CACxB,MAAqB,EACrB,MAAc;QAEd,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;QACzB,MAAM,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACtC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACzB,CAAC;CACF,CAAA;AAnDY,4BAA4B;IADxC,IAAA,mBAAU,GAAE;IAQR,WAAA,IAAA,eAAM,EAAC,iBAAiB,CAAC,CAAA;IAEzB,WAAA,IAAA,eAAM,EAAC,wBAAwB,CAAC,CAAA;IAMhC,WAAA,IAAA,eAAM,EAAC,kBAAkB,CAAC,CAAA;qCAVf,sBAAU;QACR,6BAAa,kBAKR,6BAAiB;QACtB,wBAAY;QACP,6BAAiB;QACxB,sBAAU;QACe,iCAAe;QAClC,qCAAgB;QACT,oDAAwB;QAC5B,sCAA0B;GAlBtC,4BAA4B,CAmDxC;AAnDY,oEAA4B","sourcesContent":["// Copyright 2020-2023 SubQuery Pte Ltd authors & contributors\n// SPDX-License-Identifier: GPL-3.0\n\nimport path from 'path';\nimport { Inject, Injectable, OnApplicationShutdown } from '@nestjs/common';\nimport { EventEmitter2 } from '@nestjs/event-emitter';\nimport {\n getLogger,\n NodeConfig,\n Worker,\n SmartBatchService,\n StoreService,\n PoiService,\n StoreCacheService,\n IProjectService,\n IDynamicDsService,\n HostStore,\n HostDynamicDS,\n WorkerBlockDispatcher,\n IUnfinalizedBlocksService,\n HostConnectionPoolState,\n ConnectionPoolStateManager,\n connectionPoolStateHostFunctions,\n baseWorkerFunctions,\n storeHostFunctions,\n dynamicDsHostFunctions,\n IProjectUpgradeService,\n HostUnfinalizedBlocks,\n} from '@subql/node-core';\nimport { Store } from '@subql/types-core';\nimport {\n StellarProjectDs,\n SubqueryProject,\n} from '../../configure/SubqueryProject';\nimport { StellarApiConnection } from '../../stellar/api.connection';\nimport { StellarBlockWrapped } from '../../stellar/block.stellar';\nimport { DynamicDsService } from '../dynamic-ds.service';\nimport { UnfinalizedBlocksService } from '../unfinalizedBlocks.service';\nimport { IIndexerWorker, IInitIndexerWorker } from '../worker/worker';\n\nconst logger = getLogger('WorkerBlockDispatcherService');\n\ntype IndexerWorker = IIndexerWorker & {\n terminate: () => Promise<number>;\n};\n\nasync function createIndexerWorker(\n store: Store,\n dynamicDsService: IDynamicDsService<StellarProjectDs>,\n unfinalizedBlocksService: IUnfinalizedBlocksService<StellarBlockWrapped>,\n connectionPoolState: ConnectionPoolStateManager<StellarApiConnection>,\n root: string,\n startHeight: number,\n): Promise<IndexerWorker> {\n const indexerWorker = Worker.create<\n IInitIndexerWorker,\n HostDynamicDS<StellarProjectDs> & HostStore & HostUnfinalizedBlocks\n >(\n path.resolve(__dirname, '../../../dist/indexer/worker/worker.js'),\n [...baseWorkerFunctions, 'initWorker'],\n {\n ...storeHostFunctions(store),\n ...dynamicDsHostFunctions(dynamicDsService),\n unfinalizedBlocksProcess:\n unfinalizedBlocksService.processUnfinalizedBlockHeader.bind(\n unfinalizedBlocksService,\n ),\n ...connectionPoolStateHostFunctions(connectionPoolState),\n },\n root,\n );\n\n await indexerWorker.initWorker(startHeight);\n\n return indexerWorker;\n}\n\n@Injectable()\nexport class WorkerBlockDispatcherService\n extends WorkerBlockDispatcher<StellarProjectDs, IndexerWorker>\n implements OnApplicationShutdown\n{\n constructor(\n nodeConfig: NodeConfig,\n eventEmitter: EventEmitter2,\n @Inject('IProjectService')\n projectService: IProjectService<StellarProjectDs>,\n @Inject('IProjectUpgradeService')\n projectUpgradeService: IProjectUpgradeService,\n smartBatchService: SmartBatchService,\n storeService: StoreService,\n storeCacheService: StoreCacheService,\n poiService: PoiService,\n @Inject('ISubqueryProject') project: SubqueryProject,\n dynamicDsService: DynamicDsService,\n unfinalizedBlocksSevice: UnfinalizedBlocksService,\n connectionPoolState: ConnectionPoolStateManager<StellarApiConnection>,\n ) {\n super(\n nodeConfig,\n eventEmitter,\n projectService,\n projectUpgradeService,\n smartBatchService,\n storeService,\n storeCacheService,\n poiService,\n project,\n dynamicDsService,\n () =>\n createIndexerWorker(\n storeService.getStore(),\n dynamicDsService,\n unfinalizedBlocksSevice,\n connectionPoolState,\n project.root,\n projectService.startHeight,\n ),\n );\n }\n\n protected async fetchBlock(\n worker: IndexerWorker,\n height: number,\n ): Promise<void> {\n const start = new Date();\n await worker.fetchBlock(height, null);\n const end = new Date();\n }\n}\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { OnApplicationShutdown } from '@nestjs/common';
|
|
2
1
|
import { NodeConfig, DictionaryService as CoreDictionaryService } from '@subql/node-core';
|
|
2
|
+
import EventEmitter2 from 'eventemitter2';
|
|
3
3
|
import { SubqueryProject } from '../configure/SubqueryProject';
|
|
4
|
-
export declare class DictionaryService extends CoreDictionaryService
|
|
4
|
+
export declare class DictionaryService extends CoreDictionaryService {
|
|
5
5
|
protected project: SubqueryProject;
|
|
6
|
-
constructor(project: SubqueryProject, nodeConfig: NodeConfig);
|
|
6
|
+
constructor(project: SubqueryProject, eventEmitter: EventEmitter2, nodeConfig: NodeConfig);
|
|
7
7
|
}
|
|
@@ -13,14 +13,18 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
13
13
|
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
14
14
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
15
15
|
};
|
|
16
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
17
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
18
|
+
};
|
|
16
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
20
|
exports.DictionaryService = void 0;
|
|
18
21
|
const common_1 = require("@nestjs/common");
|
|
19
22
|
const node_core_1 = require("@subql/node-core");
|
|
23
|
+
const eventemitter2_1 = __importDefault(require("eventemitter2"));
|
|
20
24
|
const SubqueryProject_1 = require("../configure/SubqueryProject");
|
|
21
25
|
let DictionaryService = class DictionaryService extends node_core_1.DictionaryService {
|
|
22
|
-
constructor(project, nodeConfig) {
|
|
23
|
-
super(project.network.dictionary, project.network.chainId, nodeConfig);
|
|
26
|
+
constructor(project, eventEmitter, nodeConfig) {
|
|
27
|
+
super(project.network.dictionary, project.network.chainId, nodeConfig, eventEmitter);
|
|
24
28
|
this.project = project;
|
|
25
29
|
}
|
|
26
30
|
};
|
|
@@ -28,6 +32,7 @@ DictionaryService = __decorate([
|
|
|
28
32
|
(0, common_1.Injectable)(),
|
|
29
33
|
__param(0, (0, common_1.Inject)('ISubqueryProject')),
|
|
30
34
|
__metadata("design:paramtypes", [SubqueryProject_1.SubqueryProject,
|
|
35
|
+
eventemitter2_1.default,
|
|
31
36
|
node_core_1.NodeConfig])
|
|
32
37
|
], DictionaryService);
|
|
33
38
|
exports.DictionaryService = DictionaryService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dictionary.service.js","sourceRoot":"","sources":["../../src/indexer/dictionary.service.ts"],"names":[],"mappings":";AAAA,8DAA8D;AAC9D,mCAAmC
|
|
1
|
+
{"version":3,"file":"dictionary.service.js","sourceRoot":"","sources":["../../src/indexer/dictionary.service.ts"],"names":[],"mappings":";AAAA,8DAA8D;AAC9D,mCAAmC;;;;;;;;;;;;;;;;;;AAEnC,2CAA2E;AAC3E,gDAG0B;AAC1B,kEAA0C;AAC1C,kEAA+D;AAGxD,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,6BAAqB;IAC1D,YACwC,OAAwB,EAC9D,YAA2B,EAC3B,UAAsB;QAEtB,KAAK,CACH,OAAO,CAAC,OAAO,CAAC,UAAU,EAC1B,OAAO,CAAC,OAAO,CAAC,OAAO,EACvB,UAAU,EACV,YAAY,CACb,CAAC;QAToC,YAAO,GAAP,OAAO,CAAiB;IAUhE,CAAC;CACF,CAAA;AAbY,iBAAiB;IAD7B,IAAA,mBAAU,GAAE;IAGR,WAAA,IAAA,eAAM,EAAC,kBAAkB,CAAC,CAAA;qCAAoB,iCAAe;QAChD,uBAAa;QACf,sBAAU;GAJb,iBAAiB,CAa7B;AAbY,8CAAiB","sourcesContent":["// Copyright 2020-2023 SubQuery Pte Ltd authors & contributors\n// SPDX-License-Identifier: GPL-3.0\n\nimport { Inject, Injectable, OnApplicationShutdown } from '@nestjs/common';\nimport {\n NodeConfig,\n DictionaryService as CoreDictionaryService,\n} from '@subql/node-core';\nimport EventEmitter2 from 'eventemitter2';\nimport { SubqueryProject } from '../configure/SubqueryProject';\n\n@Injectable()\nexport class DictionaryService extends CoreDictionaryService {\n constructor(\n @Inject('ISubqueryProject') protected project: SubqueryProject,\n eventEmitter: EventEmitter2,\n nodeConfig: NodeConfig,\n ) {\n super(\n project.network.dictionary,\n project.network.chainId,\n nodeConfig,\n eventEmitter,\n );\n }\n}\n"]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { StellarHandlerKind, isCustomDs, SubqlStellarCustomDataSource, SubqlStellarDataSource, SubqlDatasourceProcessor } from '@subql/common-stellar';
|
|
2
2
|
import { BaseDsProcessorService } from '@subql/node-core';
|
|
3
3
|
import { SecondLayerHandlerProcessor_0_0_0, SecondLayerHandlerProcessor_1_0_0, SubqlCustomDatasource } from '@subql/types-stellar';
|
|
4
|
-
export declare function isSecondLayerHandlerProcessor_0_0_0<K extends StellarHandlerKind, F, E, DS extends SubqlCustomDatasource = SubqlStellarCustomDataSource>(processor: SecondLayerHandlerProcessor_0_0_0<K, F, E, DS> | SecondLayerHandlerProcessor_1_0_0<K, F, E, DS>): processor is SecondLayerHandlerProcessor_0_0_0<K, F, E, DS>;
|
|
5
|
-
export declare function isSecondLayerHandlerProcessor_1_0_0<K extends StellarHandlerKind, F, E, DS extends SubqlStellarCustomDataSource = SubqlStellarCustomDataSource>(processor: SecondLayerHandlerProcessor_0_0_0<K, F, E, DS> | SecondLayerHandlerProcessor_1_0_0<K, F, E, DS>): processor is SecondLayerHandlerProcessor_1_0_0<K, F, E, DS>;
|
|
6
|
-
export declare function asSecondLayerHandlerProcessor_1_0_0<K extends StellarHandlerKind, F, E, DS extends SubqlStellarCustomDataSource = SubqlStellarCustomDataSource>(processor: SecondLayerHandlerProcessor_0_0_0<K, F, E, DS> | SecondLayerHandlerProcessor_1_0_0<K, F, E, DS>): SecondLayerHandlerProcessor_1_0_0<K, F, E, DS>;
|
|
7
|
-
export declare class DsProcessorService extends BaseDsProcessorService<SubqlStellarDataSource, SubqlStellarCustomDataSource<string>, SubqlDatasourceProcessor<string, unknown
|
|
4
|
+
export declare function isSecondLayerHandlerProcessor_0_0_0<K extends StellarHandlerKind, F extends Record<string, unknown>, E, DS extends SubqlCustomDatasource = SubqlStellarCustomDataSource>(processor: SecondLayerHandlerProcessor_0_0_0<K, F, E, DS> | SecondLayerHandlerProcessor_1_0_0<K, F, E, DS>): processor is SecondLayerHandlerProcessor_0_0_0<K, F, E, DS>;
|
|
5
|
+
export declare function isSecondLayerHandlerProcessor_1_0_0<K extends StellarHandlerKind, F extends Record<string, unknown>, E, DS extends SubqlStellarCustomDataSource = SubqlStellarCustomDataSource>(processor: SecondLayerHandlerProcessor_0_0_0<K, F, E, DS> | SecondLayerHandlerProcessor_1_0_0<K, F, E, DS>): processor is SecondLayerHandlerProcessor_1_0_0<K, F, E, DS>;
|
|
6
|
+
export declare function asSecondLayerHandlerProcessor_1_0_0<K extends StellarHandlerKind, F extends Record<string, unknown>, E, DS extends SubqlStellarCustomDataSource = SubqlStellarCustomDataSource>(processor: SecondLayerHandlerProcessor_0_0_0<K, F, E, DS> | SecondLayerHandlerProcessor_1_0_0<K, F, E, DS>): SecondLayerHandlerProcessor_1_0_0<K, F, E, DS>;
|
|
7
|
+
export declare class DsProcessorService extends BaseDsProcessorService<SubqlStellarDataSource, SubqlStellarCustomDataSource<string>, SubqlDatasourceProcessor<string, Record<string, unknown>>> {
|
|
8
8
|
protected isCustomDs: typeof isCustomDs;
|
|
9
9
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ds-processor.service.js","sourceRoot":"","sources":["../../src/indexer/ds-processor.service.ts"],"names":[],"mappings":";AAAA,8DAA8D;AAC9D,mCAAmC;;;;;;;;;AAEnC,2CAA4C;AAC5C,0DAM+B;AAC/B,gDAA0D;AAO1D,SAAgB,mCAAmC,CAMjD,SAEkD;IAElD,4GAA4G;IAC5G,OAAO,SAAS,CAAC,WAAW,KAAK,SAAS,CAAC;AAC7C,CAAC;AAZD,kFAYC;AAED,SAAgB,mCAAmC,CAMjD,SAEkD;IAElD,OAAO,SAAS,CAAC,WAAW,KAAK,OAAO,CAAC;AAC3C,CAAC;AAXD,kFAWC;AAED,SAAgB,mCAAmC,CAMjD,SAEkD;IAElD,IAAI,mCAAmC,CAAC,SAAS,CAAC,EAAE;QAClD,OAAO,SAAS,CAAC;KAClB;IAED,IAAI,CAAC,mCAAmC,CAAC,SAAS,CAAC,EAAE;QACnD,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;KACrD;IAED,uCACK,SAAS,KACZ,WAAW,EAAE,OAAO,EACpB,eAAe,EAAE,CAAC,MAAM,EAAE,EAAE,CAC1B,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,EACnE,WAAW,EAAE,CAAC,MAAM,EAAE,EAAE,CACtB,SAAS;aACN,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC;aAC/D,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IACzB;AACJ,CAAC;AA5BD,kFA4BC;AAGM,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,kCAIvC;IAJM;;QAKK,eAAU,GAAG,2BAAU,CAAC;IACpC,CAAC;CAAA,CAAA;AANY,kBAAkB;IAD9B,IAAA,mBAAU,GAAE;GACA,kBAAkB,CAM9B;AANY,gDAAkB","sourcesContent":["// Copyright 2020-2023 SubQuery Pte Ltd authors & contributors\n// SPDX-License-Identifier: GPL-3.0\n\nimport { Injectable } from '@nestjs/common';\nimport {\n StellarHandlerKind,\n isCustomDs,\n SubqlStellarCustomDataSource,\n SubqlStellarDataSource,\n SubqlDatasourceProcessor,\n} from '@subql/common-stellar';\nimport { BaseDsProcessorService } from '@subql/node-core';\nimport {\n SecondLayerHandlerProcessor_0_0_0,\n SecondLayerHandlerProcessor_1_0_0,\n SubqlCustomDatasource,\n} from '@subql/types-stellar';\n\nexport function isSecondLayerHandlerProcessor_0_0_0<\n K extends StellarHandlerKind,\n F
|
|
1
|
+
{"version":3,"file":"ds-processor.service.js","sourceRoot":"","sources":["../../src/indexer/ds-processor.service.ts"],"names":[],"mappings":";AAAA,8DAA8D;AAC9D,mCAAmC;;;;;;;;;AAEnC,2CAA4C;AAC5C,0DAM+B;AAC/B,gDAA0D;AAO1D,SAAgB,mCAAmC,CAMjD,SAEkD;IAElD,4GAA4G;IAC5G,OAAO,SAAS,CAAC,WAAW,KAAK,SAAS,CAAC;AAC7C,CAAC;AAZD,kFAYC;AAED,SAAgB,mCAAmC,CAMjD,SAEkD;IAElD,OAAO,SAAS,CAAC,WAAW,KAAK,OAAO,CAAC;AAC3C,CAAC;AAXD,kFAWC;AAED,SAAgB,mCAAmC,CAMjD,SAEkD;IAElD,IAAI,mCAAmC,CAAC,SAAS,CAAC,EAAE;QAClD,OAAO,SAAS,CAAC;KAClB;IAED,IAAI,CAAC,mCAAmC,CAAC,SAAS,CAAC,EAAE;QACnD,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;KACrD;IAED,uCACK,SAAS,KACZ,WAAW,EAAE,OAAO,EACpB,eAAe,EAAE,CAAC,MAAM,EAAE,EAAE,CAC1B,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,EACnE,WAAW,EAAE,CAAC,MAAM,EAAE,EAAE,CACtB,SAAS;aACN,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC;aAC/D,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IACzB;AACJ,CAAC;AA5BD,kFA4BC;AAGM,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,kCAIvC;IAJM;;QAKK,eAAU,GAAG,2BAAU,CAAC;IACpC,CAAC;CAAA,CAAA;AANY,kBAAkB;IAD9B,IAAA,mBAAU,GAAE;GACA,kBAAkB,CAM9B;AANY,gDAAkB","sourcesContent":["// Copyright 2020-2023 SubQuery Pte Ltd authors & contributors\n// SPDX-License-Identifier: GPL-3.0\n\nimport { Injectable } from '@nestjs/common';\nimport {\n StellarHandlerKind,\n isCustomDs,\n SubqlStellarCustomDataSource,\n SubqlStellarDataSource,\n SubqlDatasourceProcessor,\n} from '@subql/common-stellar';\nimport { BaseDsProcessorService } from '@subql/node-core';\nimport {\n SecondLayerHandlerProcessor_0_0_0,\n SecondLayerHandlerProcessor_1_0_0,\n SubqlCustomDatasource,\n} from '@subql/types-stellar';\n\nexport function isSecondLayerHandlerProcessor_0_0_0<\n K extends StellarHandlerKind,\n F extends Record<string, unknown>,\n E,\n DS extends SubqlCustomDatasource = SubqlStellarCustomDataSource,\n>(\n processor:\n | SecondLayerHandlerProcessor_0_0_0<K, F, E, DS>\n | SecondLayerHandlerProcessor_1_0_0<K, F, E, DS>,\n): processor is SecondLayerHandlerProcessor_0_0_0<K, F, E, DS> {\n // Exisiting datasource processors had no concept of specVersion, therefore undefined is equivalent to 0.0.0\n return processor.specVersion === undefined;\n}\n\nexport function isSecondLayerHandlerProcessor_1_0_0<\n K extends StellarHandlerKind,\n F extends Record<string, unknown>,\n E,\n DS extends SubqlStellarCustomDataSource = SubqlStellarCustomDataSource,\n>(\n processor:\n | SecondLayerHandlerProcessor_0_0_0<K, F, E, DS>\n | SecondLayerHandlerProcessor_1_0_0<K, F, E, DS>,\n): processor is SecondLayerHandlerProcessor_1_0_0<K, F, E, DS> {\n return processor.specVersion === '1.0.0';\n}\n\nexport function asSecondLayerHandlerProcessor_1_0_0<\n K extends StellarHandlerKind,\n F extends Record<string, unknown>,\n E,\n DS extends SubqlStellarCustomDataSource = SubqlStellarCustomDataSource,\n>(\n processor:\n | SecondLayerHandlerProcessor_0_0_0<K, F, E, DS>\n | SecondLayerHandlerProcessor_1_0_0<K, F, E, DS>,\n): SecondLayerHandlerProcessor_1_0_0<K, F, E, DS> {\n if (isSecondLayerHandlerProcessor_1_0_0(processor)) {\n return processor;\n }\n\n if (!isSecondLayerHandlerProcessor_0_0_0(processor)) {\n throw new Error('Unsupported ds processor version');\n }\n\n return {\n ...processor,\n specVersion: '1.0.0',\n filterProcessor: (params) =>\n processor.filterProcessor(params.filter, params.input, params.ds),\n transformer: (params) =>\n processor\n .transformer(params.input, params.ds, params.api, params.assets)\n .then((res) => [res]),\n };\n}\n\n@Injectable()\nexport class DsProcessorService extends BaseDsProcessorService<\n SubqlStellarDataSource,\n SubqlStellarCustomDataSource<string>,\n SubqlDatasourceProcessor<string, Record<string, unknown>>\n> {\n protected isCustomDs = isCustomDs;\n}\n"]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { DatasourceParams, DynamicDsService as BaseDynamicDsService } from '@subql/node-core';
|
|
2
|
-
import {
|
|
2
|
+
import { StellarProjectDs, SubqueryProject } from '../configure/SubqueryProject';
|
|
3
3
|
import { DsProcessorService } from './ds-processor.service';
|
|
4
|
-
export declare class DynamicDsService extends BaseDynamicDsService<
|
|
4
|
+
export declare class DynamicDsService extends BaseDynamicDsService<StellarProjectDs> {
|
|
5
5
|
private readonly dsProcessorService;
|
|
6
6
|
private readonly project;
|
|
7
7
|
constructor(dsProcessorService: DsProcessorService, project: SubqueryProject);
|
|
8
|
-
protected getDatasource(params: DatasourceParams): Promise<
|
|
8
|
+
protected getDatasource(params: DatasourceParams): Promise<StellarProjectDs>;
|
|
9
9
|
}
|
|
@@ -13,6 +13,17 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
13
13
|
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
14
14
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
15
15
|
};
|
|
16
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
17
|
+
var t = {};
|
|
18
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
19
|
+
t[p] = s[p];
|
|
20
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
21
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
22
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
23
|
+
t[p[i]] = s[p[i]];
|
|
24
|
+
}
|
|
25
|
+
return t;
|
|
26
|
+
};
|
|
16
27
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
28
|
exports.DynamicDsService = void 0;
|
|
18
29
|
const common_1 = require("@nestjs/common");
|
|
@@ -30,8 +41,7 @@ let DynamicDsService = class DynamicDsService extends node_core_1.DynamicDsServi
|
|
|
30
41
|
this.project = project;
|
|
31
42
|
}
|
|
32
43
|
async getDatasource(params) {
|
|
33
|
-
|
|
34
|
-
const template = (0, lodash_1.cloneDeep)((_a = this.project.templates) === null || _a === void 0 ? void 0 : _a.find((t) => t.name === params.templateName));
|
|
44
|
+
const _a = (0, lodash_1.cloneDeep)(this.project.templates.find((t) => t.name === params.templateName)), { name } = _a, template = __rest(_a, ["name"]);
|
|
35
45
|
if (!template) {
|
|
36
46
|
throw new Error(`Unable to find matching template in project for name: "${params.templateName}"`);
|
|
37
47
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynamic-ds.service.js","sourceRoot":"","sources":["../../src/indexer/dynamic-ds.service.ts"],"names":[],"mappings":";AAAA,8DAA8D;AAC9D,mCAAmC
|
|
1
|
+
{"version":3,"file":"dynamic-ds.service.js","sourceRoot":"","sources":["../../src/indexer/dynamic-ds.service.ts"],"names":[],"mappings":";AAAA,8DAA8D;AAC9D,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;AAEnC,2CAAoD;AACpD,0DAI+B;AAC/B,gDAG0B;AAC1B,yDAAiD;AACjD,qDAA+C;AAC/C,mCAAmC;AACnC,kEAGsC;AACtC,iEAA4D;AAGrD,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,4BAAsC;IAC1E,YACmB,kBAAsC,EACV,OAAwB;QAErE,KAAK,EAAE,CAAC;QAHS,uBAAkB,GAAlB,kBAAkB,CAAoB;QACV,YAAO,GAAP,OAAO,CAAiB;IAGvE,CAAC;IAES,KAAK,CAAC,aAAa,CAC3B,MAAwB;QAExB,MAAM,KAAwB,IAAA,kBAAS,EACrC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,YAAY,CAAC,CACnE,EAFK,EAAE,IAAI,OAEX,EAFgB,QAAQ,cAAnB,QAAqB,CAE1B,CAAC;QAEF,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,KAAK,CACb,0DAA0D,MAAM,CAAC,YAAY,GAAG,CACjF,CAAC;SACH;QAED,MAAM,KAAK,GAAG,gCACT,QAAQ,KACX,UAAU,EAAE,MAAM,CAAC,UAAU,GACV,CAAC;QACtB,IAAI;YACF,IAAI,IAAA,2BAAU,EAAC,KAAK,CAAC,EAAE;gBACrB,KAAK,CAAC,SAAS,CAAC,OAAO,mCAClB,KAAK,CAAC,SAAS,CAAC,OAAO,GACvB,MAAM,CAAC,IAAI,CACf,CAAC;gBACF,MAAM,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;aACzD;iBAAM,IAAI,IAAA,4BAAW,EAAC,KAAK,CAAC,EAAE;gBAC7B,KAAK,CAAC,OAAO,mCACR,KAAK,CAAC,OAAO,GACb,MAAM,CAAC,IAAI,CACf,CAAC;gBAEF,MAAM,QAAQ,GAAG,IAAA,gCAAY,EAAC,6CAA4B,EAAE,KAAK,CAAC,CAAC;gBAEnE,MAAM,MAAM,GAAG,IAAA,8BAAY,EAAC,QAAQ,EAAE;oBACpC,SAAS,EAAE,IAAI;oBACf,oBAAoB,EAAE,KAAK;iBAC5B,CAAC,CAAC;gBACH,IAAI,MAAM,CAAC,MAAM,EAAE;oBACjB,MAAM,IAAI,KAAK,CACb,0BAA0B,MAAM;yBAC7B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;yBACxB,IAAI,CAAC,IAAI,CAAC,EAAE,CAChB,CAAC;iBACH;aACF;YACD,OAAO,KAAK,CAAC;SACd;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;SACxE;IACH,CAAC;CACF,CAAA;AAzDY,gBAAgB;IAD5B,IAAA,mBAAU,GAAE;IAIR,WAAA,IAAA,eAAM,EAAC,kBAAkB,CAAC,CAAA;qCADU,yCAAkB;QACD,iCAAe;GAH5D,gBAAgB,CAyD5B;AAzDY,4CAAgB","sourcesContent":["// Copyright 2020-2023 SubQuery Pte Ltd authors & contributors\n// SPDX-License-Identifier: GPL-3.0\n\nimport { Inject, Injectable } from '@nestjs/common';\nimport {\n StellarRuntimeDataSourceImpl,\n isCustomDs,\n isRuntimeDs,\n} from '@subql/common-stellar';\nimport {\n DatasourceParams,\n DynamicDsService as BaseDynamicDsService,\n} from '@subql/node-core';\nimport { plainToClass } from 'class-transformer';\nimport { validateSync } from 'class-validator';\nimport { cloneDeep } from 'lodash';\nimport {\n StellarProjectDs,\n SubqueryProject,\n} from '../configure/SubqueryProject';\nimport { DsProcessorService } from './ds-processor.service';\n\n@Injectable()\nexport class DynamicDsService extends BaseDynamicDsService<StellarProjectDs> {\n constructor(\n private readonly dsProcessorService: DsProcessorService,\n @Inject('ISubqueryProject') private readonly project: SubqueryProject,\n ) {\n super();\n }\n\n protected async getDatasource(\n params: DatasourceParams,\n ): Promise<StellarProjectDs> {\n const { name, ...template } = cloneDeep(\n this.project.templates.find((t) => t.name === params.templateName),\n );\n\n if (!template) {\n throw new Error(\n `Unable to find matching template in project for name: \"${params.templateName}\"`,\n );\n }\n\n const dsObj = {\n ...template,\n startBlock: params.startBlock,\n } as StellarProjectDs;\n try {\n if (isCustomDs(dsObj)) {\n dsObj.processor.options = {\n ...dsObj.processor.options,\n ...params.args,\n };\n await this.dsProcessorService.validateCustomDs([dsObj]);\n } else if (isRuntimeDs(dsObj)) {\n dsObj.options = {\n ...dsObj.options,\n ...params.args,\n };\n\n const parsedDs = plainToClass(StellarRuntimeDataSourceImpl, dsObj);\n\n const errors = validateSync(parsedDs, {\n whitelist: true,\n forbidNonWhitelisted: false,\n });\n if (errors.length) {\n throw new Error(\n `Dynamic ds is invalid\\n${errors\n .map((e) => e.toString())\n .join('\\n')}`,\n );\n }\n }\n return dsObj;\n } catch (e) {\n throw new Error(`Unable to create dynamic datasource.\\n ${e.message}`);\n }\n }\n}\n"]}
|
|
@@ -31,12 +31,17 @@ FetchModule = __decorate([
|
|
|
31
31
|
node_core_1.StoreCacheService,
|
|
32
32
|
{
|
|
33
33
|
provide: node_core_1.ApiService,
|
|
34
|
-
useFactory: async (project, connectionPoolService, eventEmitter) => {
|
|
35
|
-
const apiService = new api_service_stellar_1.StellarApiService(project, connectionPoolService, eventEmitter);
|
|
34
|
+
useFactory: async (project, projectUpgradeService, connectionPoolService, eventEmitter) => {
|
|
35
|
+
const apiService = new api_service_stellar_1.StellarApiService(project, projectUpgradeService, connectionPoolService, eventEmitter);
|
|
36
36
|
await apiService.init();
|
|
37
37
|
return apiService;
|
|
38
38
|
},
|
|
39
|
-
inject: [
|
|
39
|
+
inject: [
|
|
40
|
+
'ISubqueryProject',
|
|
41
|
+
'IProjectUpgradeService',
|
|
42
|
+
node_core_1.ConnectionPoolService,
|
|
43
|
+
event_emitter_1.EventEmitter2,
|
|
44
|
+
],
|
|
40
45
|
},
|
|
41
46
|
indexer_manager_1.IndexerManager,
|
|
42
47
|
node_core_1.ConnectionPoolService,
|
|
@@ -50,13 +55,14 @@ FetchModule = __decorate([
|
|
|
50
55
|
},
|
|
51
56
|
{
|
|
52
57
|
provide: 'IBlockDispatcher',
|
|
53
|
-
useFactory: (nodeConfig, eventEmitter, projectService, apiService, indexerManager, smartBatchService, storeService, storeCacheService, poiService, project, dynamicDsService, unfinalizedBlocks, connectionPoolState) => nodeConfig.workers !== undefined
|
|
54
|
-
? new blockDispatcher_1.WorkerBlockDispatcherService(nodeConfig, eventEmitter, projectService, smartBatchService, storeService, storeCacheService, poiService, project, dynamicDsService, unfinalizedBlocks, connectionPoolState)
|
|
55
|
-
: new blockDispatcher_1.BlockDispatcherService(apiService, nodeConfig, indexerManager, eventEmitter, projectService, smartBatchService, storeService, storeCacheService, poiService, project, dynamicDsService),
|
|
58
|
+
useFactory: (nodeConfig, eventEmitter, projectService, projectUpgradeService, apiService, indexerManager, smartBatchService, storeService, storeCacheService, poiService, project, dynamicDsService, unfinalizedBlocks, connectionPoolState) => nodeConfig.workers !== undefined
|
|
59
|
+
? new blockDispatcher_1.WorkerBlockDispatcherService(nodeConfig, eventEmitter, projectService, projectUpgradeService, smartBatchService, storeService, storeCacheService, poiService, project, dynamicDsService, unfinalizedBlocks, connectionPoolState)
|
|
60
|
+
: new blockDispatcher_1.BlockDispatcherService(apiService, nodeConfig, indexerManager, eventEmitter, projectService, projectUpgradeService, smartBatchService, storeService, storeCacheService, poiService, project, dynamicDsService),
|
|
56
61
|
inject: [
|
|
57
62
|
node_core_1.NodeConfig,
|
|
58
63
|
event_emitter_1.EventEmitter2,
|
|
59
64
|
'IProjectService',
|
|
65
|
+
'IProjectUpgradeService',
|
|
60
66
|
node_core_1.ApiService,
|
|
61
67
|
indexer_manager_1.IndexerManager,
|
|
62
68
|
node_core_1.SmartBatchService,
|
|
@@ -77,16 +83,13 @@ FetchModule = __decorate([
|
|
|
77
83
|
ds_processor_service_1.DsProcessorService,
|
|
78
84
|
dynamic_ds_service_1.DynamicDsService,
|
|
79
85
|
node_core_1.PoiService,
|
|
80
|
-
node_core_1.MmrService,
|
|
81
|
-
node_core_1.MmrQueryService,
|
|
82
|
-
node_core_1.PgMmrCacheService,
|
|
83
86
|
{
|
|
84
87
|
useClass: project_service_1.ProjectService,
|
|
85
88
|
provide: 'IProjectService',
|
|
86
89
|
},
|
|
87
90
|
unfinalizedBlocks_service_1.UnfinalizedBlocksService,
|
|
88
91
|
],
|
|
89
|
-
exports: [node_core_1.StoreService, node_core_1.
|
|
92
|
+
exports: [node_core_1.StoreService, node_core_1.StoreCacheService],
|
|
90
93
|
})
|
|
91
94
|
], FetchModule);
|
|
92
95
|
exports.FetchModule = FetchModule;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch.module.js","sourceRoot":"","sources":["../../src/indexer/fetch.module.ts"],"names":[],"mappings":";AAAA,8DAA8D;AAC9D,mCAAmC;;;;;;;;;AAEnC,2CAAwC;AACxC,yDAAsD;AACtD,
|
|
1
|
+
{"version":3,"file":"fetch.module.js","sourceRoot":"","sources":["../../src/indexer/fetch.module.ts"],"names":[],"mappings":";AAAA,8DAA8D;AAC9D,mCAAmC;;;;;;;;;AAEnC,2CAAwC;AACxC,yDAAsD;AACtD,gDAa0B;AAG1B,wEAAmE;AACnE,uDAG2B;AAC3B,6DAAyD;AACzD,iEAA4D;AAC5D,6DAAwD;AACxD,mDAA+C;AAC/C,uDAAmD;AACnD,uDAAmD;AACnD,uDAAmD;AACnD,2EAAuE;AAwHhE,IAAM,WAAW,GAAjB,MAAM,WAAW;CAAG,CAAA;AAAd,WAAW;IAtHvB,IAAA,eAAM,EAAC;QACN,SAAS,EAAE;YACT,wBAAY;YACZ,6BAAiB;YACjB;gBACE,OAAO,EAAE,sBAAU;gBACnB,UAAU,EAAE,KAAK,EACf,OAAwB,EACxB,qBAA2C,EAC3C,qBAAkE,EAClE,YAA2B,EAC3B,EAAE;oBACF,MAAM,UAAU,GAAG,IAAI,uCAAiB,CACtC,OAAO,EACP,qBAAqB,EACrB,qBAAqB,EACrB,YAAY,CACb,CAAC;oBACF,MAAM,UAAU,CAAC,IAAI,EAAE,CAAC;oBACxB,OAAO,UAAU,CAAC;gBACpB,CAAC;gBACD,MAAM,EAAE;oBACN,kBAAkB;oBAClB,wBAAwB;oBACxB,iCAAqB;oBACrB,6BAAa;iBACd;aACF;YACD,gCAAc;YACd,iCAAqB;YACrB,sCAA0B;YAC1B;gBACE,OAAO,EAAE,6BAAiB;gBAC1B,UAAU,EAAE,CAAC,UAAsB,EAAE,EAAE;oBACrC,OAAO,IAAI,6BAAiB,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;gBACrD,CAAC;gBACD,MAAM,EAAE,CAAC,sBAAU,CAAC;aACrB;YACD;gBACE,OAAO,EAAE,kBAAkB;gBAC3B,UAAU,EAAE,CACV,UAAsB,EACtB,YAA2B,EAC3B,cAA8B,EAC9B,qBAA6C,EAC7C,UAAsB,EACtB,cAA8B,EAC9B,iBAAoC,EACpC,YAA0B,EAC1B,iBAAoC,EACpC,UAAsB,EACtB,OAAwB,EACxB,gBAAkC,EAClC,iBAA2C,EAC3C,mBAAqE,EACrE,EAAE,CACF,UAAU,CAAC,OAAO,KAAK,SAAS;oBAC9B,CAAC,CAAC,IAAI,8CAA4B,CAC9B,UAAU,EACV,YAAY,EACZ,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,UAAU,EACV,OAAO,EACP,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,CACpB;oBACH,CAAC,CAAC,IAAI,wCAAsB,CACxB,UAAU,EACV,UAAU,EACV,cAAc,EACd,YAAY,EACZ,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,UAAU,EACV,OAAO,EACP,gBAAgB,CACjB;gBACP,MAAM,EAAE;oBACN,sBAAU;oBACV,6BAAa;oBACb,iBAAiB;oBACjB,wBAAwB;oBACxB,sBAAU;oBACV,gCAAc;oBACd,6BAAiB;oBACjB,wBAAY;oBACZ,6BAAiB;oBACjB,sBAAU;oBACV,kBAAkB;oBAClB,qCAAgB;oBAChB,oDAAwB;oBACxB,sCAA0B;iBAC3B;aACF;YACD,4BAAY;YACZ,oCAAwB;YACxB,+BAAmB;YACnB,sCAAiB;YACjB,gCAAc;YACd,yCAAkB;YAClB,qCAAgB;YAChB,sBAAU;YACV;gBACE,QAAQ,EAAE,gCAAc;gBACxB,OAAO,EAAE,iBAAiB;aAC3B;YACD,oDAAwB;SACzB;QACD,OAAO,EAAE,CAAC,wBAAY,EAAE,6BAAiB,CAAC;KAC3C,CAAC;GACW,WAAW,CAAG;AAAd,kCAAW","sourcesContent":["// Copyright 2020-2023 SubQuery Pte Ltd authors & contributors\n// SPDX-License-Identifier: GPL-3.0\n\nimport { Module } from '@nestjs/common';\nimport { EventEmitter2 } from '@nestjs/event-emitter';\nimport {\n PoiBenchmarkService,\n IndexingBenchmarkService,\n StoreService,\n PoiService,\n ApiService,\n ConnectionPoolService,\n SmartBatchService,\n StoreCacheService,\n ConnectionPoolStateManager,\n NodeConfig,\n IProjectUpgradeService,\n ProjectUpgradeSevice,\n} from '@subql/node-core';\nimport { SubqueryProject } from '../configure/SubqueryProject';\nimport { StellarApiConnection } from '../stellar/api.connection';\nimport { StellarApiService } from '../stellar/api.service.stellar';\nimport {\n BlockDispatcherService,\n WorkerBlockDispatcherService,\n} from './blockDispatcher';\nimport { DictionaryService } from './dictionary.service';\nimport { DsProcessorService } from './ds-processor.service';\nimport { DynamicDsService } from './dynamic-ds.service';\nimport { FetchService } from './fetch.service';\nimport { IndexerManager } from './indexer.manager';\nimport { ProjectService } from './project.service';\nimport { SandboxService } from './sandbox.service';\nimport { UnfinalizedBlocksService } from './unfinalizedBlocks.service';\n\n@Module({\n providers: [\n StoreService,\n StoreCacheService,\n {\n provide: ApiService,\n useFactory: async (\n project: SubqueryProject,\n projectUpgradeService: ProjectUpgradeSevice,\n connectionPoolService: ConnectionPoolService<StellarApiConnection>,\n eventEmitter: EventEmitter2,\n ) => {\n const apiService = new StellarApiService(\n project,\n projectUpgradeService,\n connectionPoolService,\n eventEmitter,\n );\n await apiService.init();\n return apiService;\n },\n inject: [\n 'ISubqueryProject',\n 'IProjectUpgradeService',\n ConnectionPoolService,\n EventEmitter2,\n ],\n },\n IndexerManager,\n ConnectionPoolService,\n ConnectionPoolStateManager,\n {\n provide: SmartBatchService,\n useFactory: (nodeConfig: NodeConfig) => {\n return new SmartBatchService(nodeConfig.batchSize);\n },\n inject: [NodeConfig],\n },\n {\n provide: 'IBlockDispatcher',\n useFactory: (\n nodeConfig: NodeConfig,\n eventEmitter: EventEmitter2,\n projectService: ProjectService,\n projectUpgradeService: IProjectUpgradeService,\n apiService: ApiService,\n indexerManager: IndexerManager,\n smartBatchService: SmartBatchService,\n storeService: StoreService,\n storeCacheService: StoreCacheService,\n poiService: PoiService,\n project: SubqueryProject,\n dynamicDsService: DynamicDsService,\n unfinalizedBlocks: UnfinalizedBlocksService,\n connectionPoolState: ConnectionPoolStateManager<StellarApiConnection>,\n ) =>\n nodeConfig.workers !== undefined\n ? new WorkerBlockDispatcherService(\n nodeConfig,\n eventEmitter,\n projectService,\n projectUpgradeService,\n smartBatchService,\n storeService,\n storeCacheService,\n poiService,\n project,\n dynamicDsService,\n unfinalizedBlocks,\n connectionPoolState,\n )\n : new BlockDispatcherService(\n apiService,\n nodeConfig,\n indexerManager,\n eventEmitter,\n projectService,\n projectUpgradeService,\n smartBatchService,\n storeService,\n storeCacheService,\n poiService,\n project,\n dynamicDsService,\n ),\n inject: [\n NodeConfig,\n EventEmitter2,\n 'IProjectService',\n 'IProjectUpgradeService',\n ApiService,\n IndexerManager,\n SmartBatchService,\n StoreService,\n StoreCacheService,\n PoiService,\n 'ISubqueryProject',\n DynamicDsService,\n UnfinalizedBlocksService,\n ConnectionPoolStateManager,\n ],\n },\n FetchService,\n IndexingBenchmarkService,\n PoiBenchmarkService,\n DictionaryService,\n SandboxService,\n DsProcessorService,\n DynamicDsService,\n PoiService,\n {\n useClass: ProjectService,\n provide: 'IProjectService',\n },\n UnfinalizedBlocksService,\n ],\n exports: [StoreService, StoreCacheService],\n})\nexport class FetchModule {}\n"]}
|
|
@@ -2,32 +2,36 @@ import { EventEmitter2 } from '@nestjs/event-emitter';
|
|
|
2
2
|
import { SchedulerRegistry } from '@nestjs/schedule';
|
|
3
3
|
import { SubqlStellarProcessorOptions } from '@subql/common-stellar';
|
|
4
4
|
import { NodeConfig, BaseFetchService, ApiService } from '@subql/node-core';
|
|
5
|
-
import { DictionaryQueryEntry } from '@subql/types';
|
|
5
|
+
import { DictionaryQueryEntry } from '@subql/types-core';
|
|
6
6
|
import { SubqlDatasource } from '@subql/types-stellar';
|
|
7
|
-
import { MetaData } from '@subql/utils';
|
|
8
7
|
import { SubqueryProject } from '../configure/SubqueryProject';
|
|
9
8
|
import { StellarApi } from '../stellar';
|
|
10
9
|
import { IStellarBlockDispatcher } from './blockDispatcher';
|
|
11
10
|
import { DictionaryService } from './dictionary.service';
|
|
12
11
|
import { DsProcessorService } from './ds-processor.service';
|
|
13
12
|
import { DynamicDsService } from './dynamic-ds.service';
|
|
13
|
+
import { ProjectService } from './project.service';
|
|
14
14
|
import { UnfinalizedBlocksService } from './unfinalizedBlocks.service';
|
|
15
15
|
type GroupedSubqlProjectDs = SubqlDatasource & {
|
|
16
16
|
groupedOptions?: SubqlStellarProcessorOptions[];
|
|
17
17
|
};
|
|
18
|
-
export declare function buildDictionaryQueryEntries(dataSources: GroupedSubqlProjectDs[]
|
|
19
|
-
export declare class FetchService extends BaseFetchService<
|
|
18
|
+
export declare function buildDictionaryQueryEntries(dataSources: GroupedSubqlProjectDs[]): DictionaryQueryEntry[];
|
|
19
|
+
export declare class FetchService extends BaseFetchService<SubqlDatasource, IStellarBlockDispatcher, DictionaryService> {
|
|
20
|
+
private apiService;
|
|
21
|
+
private dsProcessorService;
|
|
20
22
|
private unfinalizedBlocksService;
|
|
21
|
-
constructor(apiService: ApiService, nodeConfig: NodeConfig, project: SubqueryProject, blockDispatcher: IStellarBlockDispatcher, dictionaryService: DictionaryService, dsProcessorService: DsProcessorService, dynamicDsService: DynamicDsService, unfinalizedBlocksService: UnfinalizedBlocksService, eventEmitter: EventEmitter2, schedulerRegistry: SchedulerRegistry);
|
|
23
|
+
constructor(apiService: ApiService, nodeConfig: NodeConfig, projectService: ProjectService, project: SubqueryProject, blockDispatcher: IStellarBlockDispatcher, dictionaryService: DictionaryService, dsProcessorService: DsProcessorService, dynamicDsService: DynamicDsService, unfinalizedBlocksService: UnfinalizedBlocksService, eventEmitter: EventEmitter2, schedulerRegistry: SchedulerRegistry);
|
|
22
24
|
get api(): StellarApi;
|
|
23
|
-
|
|
25
|
+
protected getGenesisHash(): string;
|
|
26
|
+
protected buildDictionaryQueryEntries(dataSources: (SubqlDatasource & {
|
|
27
|
+
name?: string;
|
|
28
|
+
})[]): DictionaryQueryEntry[];
|
|
24
29
|
protected getFinalizedHeight(): Promise<number>;
|
|
25
30
|
protected getBestHeight(): Promise<number>;
|
|
26
31
|
protected getChainInterval(): Promise<number>;
|
|
27
32
|
protected getChainId(): Promise<string>;
|
|
33
|
+
protected getModulos(): number[];
|
|
28
34
|
protected initBlockDispatcher(): Promise<void>;
|
|
29
|
-
protected validatateDictionaryMeta(metaData: MetaData): Promise<boolean>;
|
|
30
35
|
protected preLoopHook(): Promise<void>;
|
|
31
|
-
protected getModulos(): number[];
|
|
32
36
|
}
|
|
33
37
|
export {};
|
|
@@ -27,6 +27,7 @@ const yargs_1 = require("../yargs");
|
|
|
27
27
|
const dictionary_service_1 = require("./dictionary.service");
|
|
28
28
|
const ds_processor_service_1 = require("./ds-processor.service");
|
|
29
29
|
const dynamic_ds_service_1 = require("./dynamic-ds.service");
|
|
30
|
+
const project_service_1 = require("./project.service");
|
|
30
31
|
const unfinalizedBlocks_service_1 = require("./unfinalizedBlocks.service");
|
|
31
32
|
const logger = (0, node_core_1.getLogger)('fetch.service');
|
|
32
33
|
const BLOCK_TIME_VARIANCE = 5000;
|
|
@@ -131,15 +132,10 @@ function eventFilterToQueryEntry(filter, dsOptions) {
|
|
|
131
132
|
conditions,
|
|
132
133
|
};
|
|
133
134
|
}
|
|
134
|
-
function buildDictionaryQueryEntries(dataSources
|
|
135
|
+
function buildDictionaryQueryEntries(dataSources) {
|
|
135
136
|
var _a;
|
|
136
137
|
const queryEntries = [];
|
|
137
|
-
|
|
138
|
-
// sort array from lowest ds.startBlock to highest
|
|
139
|
-
const filteredDs = dataSources
|
|
140
|
-
.filter((ds) => ds.startBlock <= startBlock)
|
|
141
|
-
.sort((a, b) => a.startBlock - b.startBlock);
|
|
142
|
-
for (const ds of filteredDs) {
|
|
138
|
+
for (const ds of dataSources) {
|
|
143
139
|
for (const handler of ds.mapping.handlers) {
|
|
144
140
|
// No filters, cant use dictionary
|
|
145
141
|
if (!handler.filter)
|
|
@@ -207,23 +203,31 @@ function buildDictionaryQueryEntries(dataSources, startBlock) {
|
|
|
207
203
|
}
|
|
208
204
|
exports.buildDictionaryQueryEntries = buildDictionaryQueryEntries;
|
|
209
205
|
let FetchService = class FetchService extends node_core_1.BaseFetchService {
|
|
210
|
-
constructor(apiService, nodeConfig, project, blockDispatcher, dictionaryService, dsProcessorService, dynamicDsService, unfinalizedBlocksService, eventEmitter, schedulerRegistry) {
|
|
211
|
-
super(
|
|
206
|
+
constructor(apiService, nodeConfig, projectService, project, blockDispatcher, dictionaryService, dsProcessorService, dynamicDsService, unfinalizedBlocksService, eventEmitter, schedulerRegistry) {
|
|
207
|
+
super(nodeConfig, projectService, project.network, blockDispatcher, dictionaryService, dynamicDsService, eventEmitter, schedulerRegistry);
|
|
208
|
+
this.apiService = apiService;
|
|
209
|
+
this.dsProcessorService = dsProcessorService;
|
|
212
210
|
this.unfinalizedBlocksService = unfinalizedBlocksService;
|
|
213
211
|
}
|
|
214
212
|
get api() {
|
|
215
213
|
return this.apiService.unsafeApi;
|
|
216
214
|
}
|
|
217
|
-
|
|
218
|
-
|
|
215
|
+
getGenesisHash() {
|
|
216
|
+
return this.apiService.networkMeta.genesisHash;
|
|
217
|
+
}
|
|
218
|
+
buildDictionaryQueryEntries(dataSources) {
|
|
219
|
+
const [normalDataSources, templateDataSources] = (0, lodash_1.partition)(dataSources, (ds) => !ds.name);
|
|
220
|
+
// Group templ
|
|
221
|
+
const groupedDataSources = Object.values((0, lodash_1.groupBy)(templateDataSources, (ds) => ds.name)).map((grouped) => {
|
|
222
|
+
if (grouped.length === 1) {
|
|
223
|
+
return grouped[0];
|
|
224
|
+
}
|
|
219
225
|
const options = grouped.map((ds) => ds.options);
|
|
220
226
|
const ref = grouped[0];
|
|
221
227
|
return Object.assign(Object.assign({}, ref), { groupedOptions: options });
|
|
222
228
|
});
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
const filteredDs = this.project.dataSources.concat(groupdDynamicDs);
|
|
226
|
-
return buildDictionaryQueryEntries(filteredDs, startBlock);
|
|
229
|
+
const filteredDs = [...normalDataSources, ...groupedDataSources];
|
|
230
|
+
return buildDictionaryQueryEntries(filteredDs);
|
|
227
231
|
}
|
|
228
232
|
async getFinalizedHeight() {
|
|
229
233
|
const sequence = await this.api.getFinalizedBlockHeight();
|
|
@@ -242,51 +246,25 @@ let FetchService = class FetchService extends node_core_1.BaseFetchService {
|
|
|
242
246
|
async getChainId() {
|
|
243
247
|
return Promise.resolve(this.api.getChainId().toString());
|
|
244
248
|
}
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
const modulos: number[] = [];
|
|
248
|
-
for (const ds of this.project.dataSources) {
|
|
249
|
-
if (isCustomDs(ds)) {
|
|
250
|
-
continue;
|
|
251
|
-
}
|
|
252
|
-
for (const handler of ds.mapping.handlers) {
|
|
253
|
-
if (
|
|
254
|
-
handler.kind === StellarHandlerKind.Block &&
|
|
255
|
-
handler.filter &&
|
|
256
|
-
handler.filter.modulo
|
|
257
|
-
) {
|
|
258
|
-
modulos.push(handler.filter.modulo);
|
|
259
|
-
}
|
|
260
|
-
}
|
|
261
|
-
}
|
|
262
|
-
return modulos;
|
|
249
|
+
getModulos() {
|
|
250
|
+
return (0, node_core_1.getModulos)(this.projectService.getAllDataSources(), common_stellar_1.isCustomDs, common_stellar_1.StellarHandlerKind.Block);
|
|
263
251
|
}
|
|
264
|
-
*/
|
|
265
252
|
async initBlockDispatcher() {
|
|
266
253
|
await this.blockDispatcher.init(this.resetForNewDs.bind(this));
|
|
267
254
|
}
|
|
268
|
-
async validatateDictionaryMeta(metaData) {
|
|
269
|
-
return Promise.resolve(
|
|
270
|
-
// When alias is not used
|
|
271
|
-
metaData.genesisHash !== this.api.getGenesisHash() &&
|
|
272
|
-
// Case when an alias is used
|
|
273
|
-
metaData.genesisHash !== this.dictionaryService.chainId);
|
|
274
|
-
}
|
|
275
255
|
async preLoopHook() {
|
|
276
256
|
// Stellar doesn't need to do anything here
|
|
277
257
|
return Promise.resolve();
|
|
278
258
|
}
|
|
279
|
-
getModulos() {
|
|
280
|
-
//block handler not implemented yet
|
|
281
|
-
return [];
|
|
282
|
-
}
|
|
283
259
|
};
|
|
284
260
|
FetchService = __decorate([
|
|
285
261
|
(0, common_1.Injectable)(),
|
|
286
|
-
__param(2, (0, common_1.Inject)('
|
|
287
|
-
__param(3, (0, common_1.Inject)('
|
|
262
|
+
__param(2, (0, common_1.Inject)('IProjectService')),
|
|
263
|
+
__param(3, (0, common_1.Inject)('ISubqueryProject')),
|
|
264
|
+
__param(4, (0, common_1.Inject)('IBlockDispatcher')),
|
|
288
265
|
__metadata("design:paramtypes", [node_core_1.ApiService,
|
|
289
266
|
node_core_1.NodeConfig,
|
|
267
|
+
project_service_1.ProjectService,
|
|
290
268
|
SubqueryProject_1.SubqueryProject, Object, dictionary_service_1.DictionaryService,
|
|
291
269
|
ds_processor_service_1.DsProcessorService,
|
|
292
270
|
dynamic_ds_service_1.DynamicDsService,
|