@sentio/runtime 2.57.12 → 2.57.13-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/chunk-6XHWJ2VS.js +92 -0
- package/lib/chunk-6XHWJ2VS.js.map +1 -0
- package/lib/chunk-BPGFX5S5.js +10975 -0
- package/lib/chunk-BPGFX5S5.js.map +1 -0
- package/lib/chunk-NLEBXJPP.js +59726 -0
- package/lib/chunk-NLEBXJPP.js.map +1 -0
- package/lib/chunk-ZUTD563J.js +23006 -0
- package/lib/chunk-ZUTD563J.js.map +1 -0
- package/lib/index.d.ts +31 -9
- package/lib/index.js +70 -1
- package/lib/index.js.map +1 -1
- package/lib/processor-runner.d.ts +33 -0
- package/lib/processor-runner.js +26559 -62
- package/lib/processor-runner.js.map +1 -1
- package/lib/service-worker.d.ts +11 -0
- package/lib/service-worker.js +130 -0
- package/lib/service-worker.js.map +1 -0
- package/lib/test-processor.test.d.ts +2 -0
- package/lib/test-processor.test.js.map +1 -0
- package/package.json +1 -1
- package/src/db-context.ts +39 -18
- package/src/endpoints.ts +35 -0
- package/src/logger.ts +3 -2
- package/src/plugin.ts +3 -3
- package/src/processor-runner.ts +15 -36
- package/src/service-manager.ts +232 -0
- package/src/service-worker.ts +150 -0
- package/src/service.ts +2 -2
- package/src/state.ts +19 -0
- package/src/tsup.config.ts +3 -2
- package/lib/chunk-VDRKULG2.js +0 -131
- package/lib/chunk-VDRKULG2.js.map +0 -1
package/lib/index.d.ts
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
import * as _sentio_protos from '@sentio/protos';
|
2
|
-
import { DeepPartial as DeepPartial$1,
|
2
|
+
import { DeepPartial as DeepPartial$1, DBResponse, ProcessStreamResponse, DBRequest_DBUpsert, DBRequest, HandlerType, ProcessConfigResponse, StartRequest, DataBinding, PreparedData, ProcessResult, PreprocessResult, TemplateInstance, EthCallParam, ProcessorServiceImplementation, ProcessConfigRequest, Empty, ProcessBindingsRequest, ProcessBindingResponse, ProcessStreamRequest, PreprocessStreamRequest, PreprocessStreamResponse } from '@sentio/protos';
|
3
3
|
import { Subject } from 'rxjs';
|
4
4
|
import { AsyncLocalStorage } from 'node:async_hooks';
|
5
5
|
import { Required } from 'utility-types';
|
@@ -13,15 +13,25 @@ import { Counter, Attributes, Gauge, Histogram } from '@opentelemetry/api';
|
|
13
13
|
type Request = Omit<DBRequest, 'opId'>;
|
14
14
|
type RequestType = keyof Request;
|
15
15
|
declare const timeoutError: Error;
|
16
|
-
|
17
|
-
|
16
|
+
interface IStoreContext {
|
17
|
+
sendRequest(request: DeepPartial$1<Request>, timeoutSecs?: number): Promise<DBResponse>;
|
18
|
+
result(dbResult: DBResponse): void;
|
19
|
+
error(processId: number, e: any): void;
|
20
|
+
close(): void;
|
21
|
+
}
|
22
|
+
declare abstract class AbstractStoreContext implements IStoreContext {
|
18
23
|
readonly processId: number;
|
19
24
|
private static opCounter;
|
20
|
-
|
25
|
+
protected defers: Map<bigint, {
|
26
|
+
resolve: (value: any) => void;
|
27
|
+
reject: (reason?: any) => void;
|
28
|
+
requestType?: RequestType;
|
29
|
+
}>;
|
21
30
|
private statsInterval;
|
22
31
|
private pendings;
|
23
|
-
constructor(
|
32
|
+
constructor(processId: number);
|
24
33
|
newPromise<T>(opId: bigint, requestType?: RequestType): Promise<T>;
|
34
|
+
abstract doSend(resp: DeepPartial$1<ProcessStreamResponse>): void;
|
25
35
|
sendRequest(request: DeepPartial$1<Request>, timeoutSecs?: number): Promise<DBResponse>;
|
26
36
|
result(dbResult: DBResponse): void;
|
27
37
|
error(processId: number, e: any): void;
|
@@ -36,6 +46,11 @@ declare class StoreContext {
|
|
36
46
|
private sendBatch;
|
37
47
|
awaitPendings(): Promise<void>;
|
38
48
|
}
|
49
|
+
declare class StoreContext extends AbstractStoreContext {
|
50
|
+
readonly subject: Subject<DeepPartial$1<ProcessStreamResponse>>;
|
51
|
+
constructor(subject: Subject<DeepPartial$1<ProcessStreamResponse>>, processId: number);
|
52
|
+
doSend(resp: DeepPartial$1<ProcessStreamResponse>): void;
|
53
|
+
}
|
39
54
|
|
40
55
|
declare abstract class Plugin {
|
41
56
|
name: string;
|
@@ -62,7 +77,7 @@ declare abstract class Plugin {
|
|
62
77
|
}
|
63
78
|
declare class PluginManager {
|
64
79
|
static INSTANCE: PluginManager;
|
65
|
-
dbContextLocalStorage: AsyncLocalStorage<
|
80
|
+
dbContextLocalStorage: AsyncLocalStorage<IStoreContext | undefined>;
|
66
81
|
plugins: Plugin[];
|
67
82
|
typesToPlugin: Map<HandlerType, Plugin>;
|
68
83
|
register(plugin: Plugin): void;
|
@@ -74,7 +89,7 @@ declare class PluginManager {
|
|
74
89
|
* @deprecated The method should not be used, use ctx.states instead
|
75
90
|
*/
|
76
91
|
stateDiff(config: ProcessConfigResponse): boolean;
|
77
|
-
processBinding(request: DataBinding, preparedData: PreparedData | undefined, dbContext?:
|
92
|
+
processBinding(request: DataBinding, preparedData: PreparedData | undefined, dbContext?: IStoreContext): Promise<ProcessResult>;
|
78
93
|
preprocessBinding(request: DataBinding, preprocessStore: {
|
79
94
|
[k: string]: any;
|
80
95
|
}, dbContext?: StoreContext): Promise<PreprocessResult>;
|
@@ -103,6 +118,11 @@ declare abstract class ListStateStorage<T> extends StateStorage<T[]> {
|
|
103
118
|
getValues(): T[];
|
104
119
|
addValue(value: T): T;
|
105
120
|
}
|
121
|
+
declare class TemplateInstanceState extends ListStateStorage<TemplateInstance> {
|
122
|
+
static INSTANCE: TemplateInstanceState;
|
123
|
+
constructor();
|
124
|
+
addValue(value: TemplateInstance): TemplateInstance;
|
125
|
+
}
|
106
126
|
|
107
127
|
declare function mergeProcessResults(results: ProcessResult[]): Required<ProcessResult, 'states'>;
|
108
128
|
declare function errorString(e: Error): string;
|
@@ -127,6 +147,7 @@ declare class Endpoints {
|
|
127
147
|
chainServer: Map<string, string>;
|
128
148
|
batchCount: number;
|
129
149
|
}
|
150
|
+
declare function configureEndpoints(options: any): void;
|
130
151
|
|
131
152
|
interface ChainConfig {
|
132
153
|
ChainID: string;
|
@@ -461,8 +482,9 @@ declare class ProcessorServiceImpl implements ProcessorServiceImplementation {
|
|
461
482
|
} | undefined;
|
462
483
|
} | undefined;
|
463
484
|
}, void, undefined>;
|
464
|
-
|
485
|
+
protected handleRequests(requests: AsyncIterable<ProcessStreamRequest>, subject: Subject<DeepPartial$1<ProcessStreamResponse>>): Promise<void>;
|
465
486
|
}
|
487
|
+
declare function recordRuntimeInfo(results: ProcessResult, handlerType: HandlerType): void;
|
466
488
|
|
467
489
|
interface ExecutionConfig {
|
468
490
|
sequential: boolean;
|
@@ -659,4 +681,4 @@ declare const processMetrics: {
|
|
659
681
|
};
|
660
682
|
declare const metricsStorage: AsyncLocalStorage<string>;
|
661
683
|
|
662
|
-
export { type ChainConfig, DummyProvider, Endpoints, GLOBAL_CONFIG, type GlobalConfig, ListStateStorage, MapStateStorage, Plugin, PluginManager, ProcessorServiceImpl, QueuedStaticJsonRpcProvider, type Semver, State, StateStorage, StoreContext, USER_PROCESSOR, compareSemver, dbMetrics, errorString, getProvider, makeEthCallKey, mergeProcessResults, metricsStorage, parseSemver, processMetrics, providerMetrics, timeoutError };
|
684
|
+
export { AbstractStoreContext, type ChainConfig, DummyProvider, Endpoints, GLOBAL_CONFIG, type GlobalConfig, type IStoreContext, ListStateStorage, MapStateStorage, Plugin, PluginManager, ProcessorServiceImpl, QueuedStaticJsonRpcProvider, type Semver, State, StateStorage, StoreContext, TemplateInstanceState, USER_PROCESSOR, compareSemver, configureEndpoints, dbMetrics, errorString, getProvider, makeEthCallKey, mergeProcessResults, metricsStorage, parseSemver, processMetrics, providerMetrics, recordRuntimeInfo, timeoutError };
|
package/lib/index.js
CHANGED
@@ -1,3 +1,72 @@
|
|
1
1
|
import { createRequire as createRequireShim } from 'module'; const require = createRequireShim(import.meta.url);
|
2
|
-
import
|
2
|
+
import {
|
3
|
+
ListStateStorage,
|
4
|
+
MapStateStorage,
|
5
|
+
State,
|
6
|
+
StateStorage,
|
7
|
+
TemplateInstanceState
|
8
|
+
} from "./chunk-6XHWJ2VS.js";
|
9
|
+
import {
|
10
|
+
AbstractStoreContext,
|
11
|
+
DummyProvider,
|
12
|
+
Endpoints,
|
13
|
+
GLOBAL_CONFIG,
|
14
|
+
ProcessorServiceImpl,
|
15
|
+
QueuedStaticJsonRpcProvider,
|
16
|
+
StoreContext,
|
17
|
+
USER_PROCESSOR,
|
18
|
+
compareSemver,
|
19
|
+
configureEndpoints,
|
20
|
+
dbMetrics,
|
21
|
+
errorString,
|
22
|
+
getProvider,
|
23
|
+
makeEthCallKey,
|
24
|
+
mergeProcessResults,
|
25
|
+
metricsStorage,
|
26
|
+
parseSemver,
|
27
|
+
processMetrics,
|
28
|
+
providerMetrics,
|
29
|
+
recordRuntimeInfo,
|
30
|
+
timeoutError
|
31
|
+
} from "./chunk-NLEBXJPP.js";
|
32
|
+
import {
|
33
|
+
Plugin,
|
34
|
+
PluginManager
|
35
|
+
} from "./chunk-ZUTD563J.js";
|
36
|
+
|
37
|
+
// src/chain-config.ts
|
38
|
+
import("node:process").then((p) => p.stdout.write(""));
|
39
|
+
|
40
|
+
// src/index.ts
|
41
|
+
import("node:process").then((p) => p.stdout.write(""));
|
42
|
+
export {
|
43
|
+
AbstractStoreContext,
|
44
|
+
DummyProvider,
|
45
|
+
Endpoints,
|
46
|
+
GLOBAL_CONFIG,
|
47
|
+
ListStateStorage,
|
48
|
+
MapStateStorage,
|
49
|
+
Plugin,
|
50
|
+
PluginManager,
|
51
|
+
ProcessorServiceImpl,
|
52
|
+
QueuedStaticJsonRpcProvider,
|
53
|
+
State,
|
54
|
+
StateStorage,
|
55
|
+
StoreContext,
|
56
|
+
TemplateInstanceState,
|
57
|
+
USER_PROCESSOR,
|
58
|
+
compareSemver,
|
59
|
+
configureEndpoints,
|
60
|
+
dbMetrics,
|
61
|
+
errorString,
|
62
|
+
getProvider,
|
63
|
+
makeEthCallKey,
|
64
|
+
mergeProcessResults,
|
65
|
+
metricsStorage,
|
66
|
+
parseSemver,
|
67
|
+
processMetrics,
|
68
|
+
providerMetrics,
|
69
|
+
recordRuntimeInfo,
|
70
|
+
timeoutError
|
71
|
+
};
|
3
72
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../src/
|
1
|
+
{"version":3,"sources":["../src/chain-config.ts","../src/index.ts"],"sourcesContent":["export interface ChainConfig {\n ChainID: string\n Https?: string[]\n ChainServer?: string\n}\n;import(\"node:process\").then((p) => p.stdout.write(\"\"));","export * from './plugin.js'\nexport * from './state.js'\nexport * from './utils.js'\nexport * from './endpoints.js'\nexport * from './chain-config.js'\nexport * from './service.js'\nexport { GLOBAL_CONFIG, type GlobalConfig } from './global-config.js'\nexport * from './db-context.js'\nexport * from './provider.js'\nexport * from './metrics.js'\n;import(\"node:process\").then((p) => p.stdout.write(\"\"));"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKC,OAAO,cAAc,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,MAAM,EAAE,CAAC;;;ACKrD,OAAO,cAAc,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,MAAM,EAAE,CAAC;","names":[]}
|
@@ -1 +1,34 @@
|
|
1
1
|
#!/usr/bin/env node
|
2
|
+
declare const optionDefinitions: ({
|
3
|
+
name: string;
|
4
|
+
type: StringConstructor;
|
5
|
+
defaultOption: boolean;
|
6
|
+
alias?: undefined;
|
7
|
+
defaultValue?: undefined;
|
8
|
+
} | {
|
9
|
+
name: string;
|
10
|
+
alias: string;
|
11
|
+
type: StringConstructor;
|
12
|
+
defaultValue: string;
|
13
|
+
defaultOption?: undefined;
|
14
|
+
} | {
|
15
|
+
name: string;
|
16
|
+
type: StringConstructor;
|
17
|
+
defaultValue: string;
|
18
|
+
defaultOption?: undefined;
|
19
|
+
alias?: undefined;
|
20
|
+
} | {
|
21
|
+
name: string;
|
22
|
+
type: BooleanConstructor;
|
23
|
+
defaultValue: boolean;
|
24
|
+
defaultOption?: undefined;
|
25
|
+
alias?: undefined;
|
26
|
+
} | {
|
27
|
+
name: string;
|
28
|
+
type: NumberConstructor;
|
29
|
+
defaultValue: string | number;
|
30
|
+
defaultOption?: undefined;
|
31
|
+
alias?: undefined;
|
32
|
+
})[];
|
33
|
+
|
34
|
+
export { optionDefinitions };
|