@sentio/sdk 2.22.0-rc.1 → 2.22.0-rc.3

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.
@@ -8,7 +8,7 @@ interface Handlers {
8
8
  export declare class AptosPlugin extends Plugin {
9
9
  name: string;
10
10
  handlers: Handlers;
11
- start(start: StartRequest): Promise<void>;
11
+ start(request: StartRequest): Promise<void>;
12
12
  configure(config: ProcessConfigResponse): Promise<void>;
13
13
  supportedHandlers: HandlerType[];
14
14
  processBinding(request: DataBinding): Promise<ProcessResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"aptos-plugin.d.ts","sourceRoot":"","sources":["../../src/aptos/aptos-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoC,MAAM,EAAiC,MAAM,iBAAiB,CAAA;AACzG,OAAO,EAGL,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,WAAW,EAIX,qBAAqB,EACrB,aAAa,EACb,YAAY,EACb,MAAM,gBAAgB,CAAA;AAQvB,UAAU,QAAQ;IAChB,kBAAkB,EAAE,CAAC,CAAC,KAAK,EAAE,aAAa,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC,EAAE,CAAA;IACxE,iBAAiB,EAAE,CAAC,CAAC,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC,EAAE,CAAA;IACrE,qBAAqB,EAAE,CAAC,CAAC,mBAAmB,EAAE,gBAAgB,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC,EAAE,CAAA;CAC7F;AACD,qBAAa,WAAY,SAAQ,MAAM;IACrC,IAAI,EAAE,MAAM,CAAgB;IAC5B,QAAQ,EAAE,QAAQ,CAIjB;IAEK,KAAK,CAAC,KAAK,EAAE,YAAY;IAIzB,SAAS,CAAC,MAAM,EAAE,qBAAqB;IAiF7C,iBAAiB,gBAA0E;IAErF,cAAc,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;IAa5D,iBAAiB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;IAqB/D,oBAAoB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;IAoBlE,wBAAwB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;CAgB7E"}
1
+ {"version":3,"file":"aptos-plugin.d.ts","sourceRoot":"","sources":["../../src/aptos/aptos-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoC,MAAM,EAAiC,MAAM,iBAAiB,CAAA;AACzG,OAAO,EAGL,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,WAAW,EAIX,qBAAqB,EACrB,aAAa,EACb,YAAY,EACb,MAAM,gBAAgB,CAAA;AAevB,UAAU,QAAQ;IAChB,kBAAkB,EAAE,CAAC,CAAC,KAAK,EAAE,aAAa,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC,EAAE,CAAA;IACxE,iBAAiB,EAAE,CAAC,CAAC,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC,EAAE,CAAA;IACrE,qBAAqB,EAAE,CAAC,CAAC,mBAAmB,EAAE,gBAAgB,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC,EAAE,CAAA;CAC7F;AACD,qBAAa,WAAY,SAAQ,MAAM;IACrC,IAAI,EAAE,MAAM,CAAgB;IAC5B,QAAQ,EAAE,QAAQ,CAIjB;IAEK,KAAK,CAAC,OAAO,EAAE,YAAY;IAuB3B,SAAS,CAAC,MAAM,EAAE,qBAAqB;IAiF7C,iBAAiB,gBAA0E;IAErF,cAAc,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;IAa5D,iBAAiB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;IAqB/D,oBAAoB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;IAoBlE,wBAAwB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;CAgB7E"}
@@ -1,8 +1,12 @@
1
1
  import { errorString, mergeProcessResults, Plugin, PluginManager, USER_PROCESSOR } from '@sentio/runtime';
2
2
  import { AccountConfig, ContractConfig, HandlerType, MoveOwnerType, } from '@sentio/protos';
3
3
  import { ServerError, Status } from 'nice-grpc';
4
- import { AptosAccountProcessorState, AptosProcessorState } from './aptos-processor.js';
4
+ import { AptosProcessorState, AptosResourceProcessorState } from './aptos-processor.js';
5
5
  import { initCoinList } from './ext/coin.js';
6
+ import { AptosChainId } from '@sentio/chain';
7
+ import { AptosResourcesContext } from './context.js';
8
+ import { AptosResourceProcessorTemplateState, } from './aptos-resource-processor-template.js';
9
+ import { AptosNetwork } from './network.js';
6
10
  export class AptosPlugin extends Plugin {
7
11
  name = 'AptosPlugin';
8
12
  handlers = {
@@ -10,8 +14,20 @@ export class AptosPlugin extends Plugin {
10
14
  aptosCallHandlers: [],
11
15
  aptosResourceHandlers: [],
12
16
  };
13
- async start(start) {
17
+ async start(request) {
14
18
  await initCoinList();
19
+ const allowedChainIds = new Set(Object.values(AptosChainId));
20
+ for (const instance of request.templateInstances) {
21
+ if (!allowedChainIds.has(instance.contract?.chainId || '')) {
22
+ continue;
23
+ }
24
+ const template = AptosResourceProcessorTemplateState.INSTANCE.getValues()[instance.templateId];
25
+ template.bind({
26
+ address: instance.contract?.address || '',
27
+ network: instance.contract?.chainId || AptosNetwork.MAIN_NET,
28
+ startVersion: instance.startBlock || 0n,
29
+ }, NoopContext);
30
+ }
15
31
  }
16
32
  async configure(config) {
17
33
  const handlers = {
@@ -65,7 +81,7 @@ export class AptosPlugin extends Plugin {
65
81
  }
66
82
  config.contractConfigs.push(contractConfig);
67
83
  }
68
- for (const aptosProcessor of AptosAccountProcessorState.INSTANCE.getValues()) {
84
+ for (const aptosProcessor of AptosResourceProcessorState.INSTANCE.getValues()) {
69
85
  const accountConfig = AccountConfig.fromPartial({
70
86
  address: aptosProcessor.config.address,
71
87
  chainId: aptosProcessor.getChainId(),
@@ -148,4 +164,5 @@ export class AptosPlugin extends Plugin {
148
164
  }
149
165
  }
150
166
  PluginManager.INSTANCE.register(new AptosPlugin());
167
+ const NoopContext = new AptosResourcesContext(AptosChainId.APTOS_MAINNET, '', 0n, 1, {});
151
168
  //# sourceMappingURL=aptos-plugin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"aptos-plugin.js","sourceRoot":"","sources":["../../src/aptos/aptos-plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aptos-plugin.js","sourceRoot":"","sources":["../../src/aptos/aptos-plugin.ts"],"names":[],"mappings":"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"}
@@ -3,9 +3,10 @@ import { MoveCoder } from './move-coder.js';
3
3
  import { AptosBindOptions, AptosNetwork } from './network.js';
4
4
  import { AptosContext, AptosResourcesContext } from './context.js';
5
5
  import { ListStateStorage } from '@sentio/runtime';
6
- import { MoveFetchConfig, Data_AptResource, HandleInterval, ProcessResult, Data_AptEvent, Data_AptCall } from '@sentio/protos';
6
+ import { MoveFetchConfig, Data_AptResource, HandleInterval, ProcessResult, Data_AptEvent, Data_AptCall, MoveAccountFetchConfig } from '@sentio/protos';
7
7
  import { CallHandler, EventFilter, EventHandler, FunctionNameAndCallFilter } from '../move/index.js';
8
8
  import { Labels, PromiseOrVoid } from '../core/index.js';
9
+ export declare const DEFAULT_RESOURCE_FETCH_CONFIG: MoveAccountFetchConfig;
9
10
  type IndexConfigure = {
10
11
  address: string;
11
12
  network: AptosNetwork;
@@ -17,6 +18,7 @@ declare class ResourceHandlder {
17
18
  versionInterval?: HandleInterval;
18
19
  timeIntervalInMinutes?: HandleInterval;
19
20
  handler: (resource: Data_AptResource) => Promise<ProcessResult>;
21
+ fetchConfig: MoveAccountFetchConfig;
20
22
  }
21
23
  export declare class AptosProcessorState extends ListStateStorage<AptosBaseProcessor> {
22
24
  static INSTANCE: AptosProcessorState;
@@ -38,8 +40,8 @@ export declare class AptosModulesProcessor extends AptosBaseProcessor {
38
40
  private constructor();
39
41
  static bind(options: AptosBindOptions): AptosModulesProcessor;
40
42
  }
41
- export declare class AptosAccountProcessorState extends ListStateStorage<AptosResourcesProcessor> {
42
- static INSTANCE: AptosAccountProcessorState;
43
+ export declare class AptosResourceProcessorState extends ListStateStorage<AptosResourcesProcessor> {
44
+ static INSTANCE: AptosResourceProcessorState;
43
45
  }
44
46
  export declare class AptosResourcesProcessor {
45
47
  config: IndexConfigure;
@@ -47,9 +49,9 @@ export declare class AptosResourcesProcessor {
47
49
  static bind(options: AptosBindOptions): AptosResourcesProcessor;
48
50
  protected constructor(options: AptosBindOptions);
49
51
  getChainId(): string;
50
- private onInterval;
51
- onTimeInterval(handler: (resources: MoveResource[], ctx: AptosResourcesContext) => PromiseOrVoid, timeIntervalInMinutes?: number, backfillTimeIntervalInMinutes?: number, type?: string): this;
52
- onVersionInterval(handler: (resources: MoveResource[], ctx: AptosResourcesContext) => PromiseOrVoid, versionInterval?: number, backfillVersionInterval?: number, typePrefix?: string): this;
52
+ onInterval(handler: (resources: MoveResource[], ctx: AptosResourcesContext) => PromiseOrVoid, timeInterval: HandleInterval | undefined, versionInterval: HandleInterval | undefined, type: string | undefined, fetchConfig: Partial<MoveAccountFetchConfig> | undefined): this;
53
+ onTimeInterval(handler: (resources: MoveResource[], ctx: AptosResourcesContext) => PromiseOrVoid, timeIntervalInMinutes?: number, backfillTimeIntervalInMinutes?: number, type?: string, fetchConfig?: Partial<MoveAccountFetchConfig>): this;
54
+ onVersionInterval(handler: (resources: MoveResource[], ctx: AptosResourcesContext) => PromiseOrVoid, versionInterval?: number, backfillVersionInterval?: number, typePrefix?: string, fetchConfig?: Partial<MoveAccountFetchConfig>): this;
53
55
  }
54
56
  export {};
55
57
  //# sourceMappingURL=aptos-processor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"aptos-processor.d.ts","sourceRoot":"","sources":["../../src/aptos/aptos-processor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aptos-processor.d.ts","sourceRoot":"","sources":["../../src/aptos/aptos-processor.ts"],"names":[],"mappings":"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"}
@@ -9,11 +9,15 @@ const DEFAULT_FETCH_CONFIG = {
9
9
  resourceChanges: false,
10
10
  allEvents: true,
11
11
  };
12
+ export const DEFAULT_RESOURCE_FETCH_CONFIG = {
13
+ owned: true,
14
+ };
12
15
  class ResourceHandlder {
13
16
  type;
14
17
  versionInterval;
15
18
  timeIntervalInMinutes;
16
19
  handler;
20
+ fetchConfig;
17
21
  }
18
22
  class AptosProcessorState extends ListStateStorage {
19
23
  static INSTANCE = new AptosProcessorState();
@@ -136,10 +140,10 @@ export class AptosModulesProcessor extends AptosBaseProcessor {
136
140
  return new AptosModulesProcessor(options);
137
141
  }
138
142
  }
139
- class AptosAccountProcessorState extends ListStateStorage {
140
- static INSTANCE = new AptosAccountProcessorState();
143
+ class AptosResourceProcessorState extends ListStateStorage {
144
+ static INSTANCE = new AptosResourceProcessorState();
141
145
  }
142
- export { AptosAccountProcessorState };
146
+ export { AptosResourceProcessorState };
143
147
  export class AptosResourcesProcessor {
144
148
  config;
145
149
  resourcesHandlers = [];
@@ -148,12 +152,12 @@ export class AptosResourcesProcessor {
148
152
  }
149
153
  constructor(options) {
150
154
  this.config = configure(options);
151
- AptosAccountProcessorState.INSTANCE.addValue(this);
155
+ AptosResourceProcessorState.INSTANCE.addValue(this);
152
156
  }
153
157
  getChainId() {
154
158
  return this.config.network;
155
159
  }
156
- onInterval(handler, timeInterval, versionInterval, type) {
160
+ onInterval(handler, timeInterval, versionInterval, type, fetchConfig) {
157
161
  const processor = this;
158
162
  this.resourcesHandlers.push({
159
163
  handler: async function (data) {
@@ -168,17 +172,18 @@ export class AptosResourcesProcessor {
168
172
  timeIntervalInMinutes: timeInterval,
169
173
  versionInterval: versionInterval,
170
174
  type: type,
175
+ fetchConfig: { ...DEFAULT_RESOURCE_FETCH_CONFIG, ...fetchConfig },
171
176
  });
172
177
  return this;
173
178
  }
174
- onTimeInterval(handler, timeIntervalInMinutes = 60, backfillTimeIntervalInMinutes = 240, type) {
179
+ onTimeInterval(handler, timeIntervalInMinutes = 60, backfillTimeIntervalInMinutes = 240, type, fetchConfig) {
175
180
  return this.onInterval(handler, {
176
181
  recentInterval: timeIntervalInMinutes,
177
182
  backfillInterval: backfillTimeIntervalInMinutes,
178
- }, undefined, type);
183
+ }, undefined, type, fetchConfig);
179
184
  }
180
- onVersionInterval(handler, versionInterval = 100000, backfillVersionInterval = 400000, typePrefix) {
181
- return this.onInterval(handler, undefined, { recentInterval: versionInterval, backfillInterval: backfillVersionInterval }, typePrefix);
185
+ onVersionInterval(handler, versionInterval = 100000, backfillVersionInterval = 400000, typePrefix, fetchConfig) {
186
+ return this.onInterval(handler, undefined, { recentInterval: versionInterval, backfillInterval: backfillVersionInterval }, typePrefix, fetchConfig);
182
187
  }
183
188
  }
184
189
  function configure(options) {
@@ -1 +1 @@
1
- {"version":3,"file":"aptos-processor.js","sourceRoot":"","sources":["../../src/aptos/aptos-processor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aptos-processor.js","sourceRoot":"","sources":["../../src/aptos/aptos-processor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ import { ListStateStorage } from '@sentio/runtime';
2
+ import { AptosResourcesContext } from './context.js';
3
+ import { AptosBindOptions } from './network.js';
4
+ import { AptosResourcesProcessor } from './aptos-processor.js';
5
+ import { HandleInterval, MoveAccountFetchConfig } from '@sentio/protos';
6
+ import { MoveResource } from './move-types.js';
7
+ import { PromiseOrVoid } from '../core/index.js';
8
+ export declare class AptosResourceProcessorTemplateState extends ListStateStorage<AptosResourceProcessorTemplate> {
9
+ static INSTANCE: AptosResourceProcessorTemplateState;
10
+ }
11
+ declare class Handler {
12
+ type?: string;
13
+ checkpointInterval?: HandleInterval;
14
+ timeIntervalInMinutes?: HandleInterval;
15
+ handler: (resources: MoveResource[], ctx: AptosResourcesContext) => PromiseOrVoid;
16
+ fetchConfig: MoveAccountFetchConfig;
17
+ }
18
+ export declare class AptosResourceProcessorTemplate {
19
+ id: number;
20
+ binds: Set<string>;
21
+ handlers: Handler[];
22
+ constructor();
23
+ createProcessor(options: AptosBindOptions): AptosResourcesProcessor;
24
+ bind(options: AptosBindOptions, ctx: AptosResourcesContext): void;
25
+ protected onInterval(handler: (resources: MoveResource[], ctx: AptosResourcesContext) => PromiseOrVoid, timeInterval: HandleInterval | undefined, checkpointInterval: HandleInterval | undefined, type: string | undefined, fetchConfig: Partial<MoveAccountFetchConfig> | undefined): this;
26
+ onTimeInterval(handler: (resources: MoveResource[], ctx: AptosResourcesContext) => PromiseOrVoid, timeIntervalInMinutes?: number, backfillTimeIntervalInMinutes?: number, type?: string, fetchConfig?: Partial<MoveAccountFetchConfig>): this;
27
+ onVersionInterval(handler: (resources: MoveResource[], ctx: AptosResourcesContext) => PromiseOrVoid, checkpointInterval?: number, backfillCheckpointInterval?: number, type?: string, fetchConfig?: Partial<MoveAccountFetchConfig>): this;
28
+ }
29
+ export {};
30
+ //# sourceMappingURL=aptos-resource-processor-template.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aptos-resource-processor-template.d.ts","sourceRoot":"","sources":["../../src/aptos/aptos-resource-processor-template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAElD,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,uBAAuB,EAAiC,MAAM,sBAAsB,CAAA;AAC7F,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAEhD,qBAAa,mCAAoC,SAAQ,gBAAgB,CAAC,8BAA8B,CAAC;IACvG,MAAM,CAAC,QAAQ,sCAA4C;CAC5D;AAED,cAAM,OAAO;IACX,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,kBAAkB,CAAC,EAAE,cAAc,CAAA;IACnC,qBAAqB,CAAC,EAAE,cAAc,CAAA;IACtC,OAAO,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,EAAE,GAAG,EAAE,qBAAqB,KAAK,aAAa,CAAA;IACjF,WAAW,EAAE,sBAAsB,CAAA;CACpC;AAED,qBAAa,8BAA8B;IACzC,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,cAAoB;IACzB,QAAQ,EAAE,OAAO,EAAE,CAAK;;IAOxB,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,uBAAuB;IAInE,IAAI,CAAC,OAAO,EAAE,gBAAgB,EAAE,GAAG,EAAE,qBAAqB,GAAG,IAAI;IAoCjE,SAAS,CAAC,UAAU,CAClB,OAAO,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,EAAE,GAAG,EAAE,qBAAqB,KAAK,aAAa,EACjF,YAAY,EAAE,cAAc,GAAG,SAAS,EACxC,kBAAkB,EAAE,cAAc,GAAG,SAAS,EAC9C,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,WAAW,EAAE,OAAO,CAAC,sBAAsB,CAAC,GAAG,SAAS,GACvD,IAAI;IAWA,cAAc,CACnB,OAAO,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,EAAE,GAAG,EAAE,qBAAqB,KAAK,aAAa,EACjF,qBAAqB,SAAK,EAC1B,6BAA6B,SAAM,EACnC,IAAI,CAAC,EAAE,MAAM,EACb,WAAW,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,GAC5C,IAAI;IAaA,iBAAiB,CACtB,OAAO,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,EAAE,GAAG,EAAE,qBAAqB,KAAK,aAAa,EACjF,kBAAkB,SAAS,EAC3B,0BAA0B,SAAS,EACnC,IAAI,CAAC,EAAE,MAAM,EACb,WAAW,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,GAC5C,IAAI;CASR"}
@@ -0,0 +1,78 @@
1
+ import { ListStateStorage } from '@sentio/runtime';
2
+ import { TemplateInstanceState } from '../core/template.js';
3
+ import { AptosResourcesProcessor, DEFAULT_RESOURCE_FETCH_CONFIG } from './aptos-processor.js';
4
+ class AptosResourceProcessorTemplateState extends ListStateStorage {
5
+ static INSTANCE = new AptosResourceProcessorTemplateState();
6
+ }
7
+ export { AptosResourceProcessorTemplateState };
8
+ class Handler {
9
+ type;
10
+ checkpointInterval;
11
+ timeIntervalInMinutes;
12
+ handler;
13
+ fetchConfig;
14
+ }
15
+ export class AptosResourceProcessorTemplate {
16
+ id;
17
+ binds = new Set();
18
+ handlers = [];
19
+ constructor() {
20
+ this.id = AptosResourceProcessorTemplateState.INSTANCE.getValues().length;
21
+ AptosResourceProcessorTemplateState.INSTANCE.addValue(this);
22
+ }
23
+ createProcessor(options) {
24
+ return AptosResourcesProcessor.bind(options);
25
+ }
26
+ bind(options, ctx) {
27
+ options.network = options.network || ctx.network;
28
+ options.startVersion = options.startVersion || ctx.version;
29
+ const id = options.address;
30
+ const sig = [options.network, id].join('_');
31
+ if (this.binds.has(sig)) {
32
+ console.log(`Same object id can be bind to one template only once, ignore duplicate bind: ${sig}`);
33
+ return;
34
+ }
35
+ this.binds.add(sig);
36
+ const processor = this.createProcessor(options);
37
+ for (const h of this.handlers) {
38
+ processor.onInterval(h.handler, h.timeIntervalInMinutes, h.checkpointInterval, h.type, h.fetchConfig);
39
+ }
40
+ const config = processor.config;
41
+ ctx.update({
42
+ states: {
43
+ configUpdated: true,
44
+ },
45
+ });
46
+ TemplateInstanceState.INSTANCE.addValue({
47
+ templateId: this.id,
48
+ contract: {
49
+ name: '',
50
+ chainId: config.network,
51
+ address: config.address,
52
+ abi: '',
53
+ },
54
+ startBlock: config.startVersion,
55
+ endBlock: 0n,
56
+ });
57
+ }
58
+ onInterval(handler, timeInterval, checkpointInterval, type, fetchConfig) {
59
+ this.handlers.push({
60
+ handler: handler,
61
+ timeIntervalInMinutes: timeInterval,
62
+ checkpointInterval: checkpointInterval,
63
+ type,
64
+ fetchConfig: { ...DEFAULT_RESOURCE_FETCH_CONFIG, ...fetchConfig },
65
+ });
66
+ return this;
67
+ }
68
+ onTimeInterval(handler, timeIntervalInMinutes = 60, backfillTimeIntervalInMinutes = 240, type, fetchConfig) {
69
+ return this.onInterval(handler, {
70
+ recentInterval: timeIntervalInMinutes,
71
+ backfillInterval: backfillTimeIntervalInMinutes,
72
+ }, undefined, type, fetchConfig);
73
+ }
74
+ onVersionInterval(handler, checkpointInterval = 100000, backfillCheckpointInterval = 400000, type, fetchConfig) {
75
+ return this.onInterval(handler, undefined, { recentInterval: checkpointInterval, backfillInterval: backfillCheckpointInterval }, type, fetchConfig);
76
+ }
77
+ }
78
+ //# sourceMappingURL=aptos-resource-processor-template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aptos-resource-processor-template.js","sourceRoot":"","sources":["../../src/aptos/aptos-resource-processor-template.ts"],"names":[],"mappings":"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"}
@@ -2,11 +2,11 @@ export * from './move-types.js';
2
2
  export type { TypedEventInstance, TypedFunctionPayload, TypedMoveResource } from './models.js';
3
3
  export { defaultMoveCoder, MoveCoder } from './move-coder.js';
4
4
  export { AptosBaseProcessor, AptosResourcesProcessor, AptosModulesProcessor } from './aptos-processor.js';
5
+ export { AptosResourceProcessorTemplate } from './aptos-resource-processor-template.js';
5
6
  export { AptosContext, AptosResourcesContext } from './context.js';
6
7
  export { AptosBindOptions, AptosNetwork } from './network.js';
7
8
  export * from './api.js';
8
9
  export { ModuleClient } from './module-client.js';
9
10
  export { AptosPlugin } from './aptos-plugin.js';
10
11
  export { BUILTIN_TYPES } from '../move/types.js';
11
- export * from './utils.js';
12
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/aptos/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,YAAY,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC9F,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC7D,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AACzG,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA;AAClE,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC7D,cAAc,UAAU,CAAA;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEjD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAEhD,cAAc,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/aptos/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,YAAY,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC9F,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC7D,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AACzG,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAA;AACvF,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA;AAClE,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC7D,cAAc,UAAU,CAAA;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEjD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA"}
@@ -1,11 +1,12 @@
1
1
  export * from './move-types.js';
2
2
  export { defaultMoveCoder, MoveCoder } from './move-coder.js';
3
3
  export { AptosBaseProcessor, AptosResourcesProcessor, AptosModulesProcessor } from './aptos-processor.js';
4
+ export { AptosResourceProcessorTemplate } from './aptos-resource-processor-template.js';
4
5
  export { AptosContext, AptosResourcesContext } from './context.js';
5
6
  export { AptosBindOptions, AptosNetwork } from './network.js';
6
7
  export * from './api.js';
7
8
  export { ModuleClient } from './module-client.js';
8
9
  export { AptosPlugin } from './aptos-plugin.js';
9
10
  export { BUILTIN_TYPES } from '../move/types.js';
10
- export * from './utils.js';
11
+ // export * from './utils.js'
11
12
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/aptos/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAE/B,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC7D,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AACzG,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA;AAClE,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC7D,cAAc,UAAU,CAAA;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEjD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAEhD,cAAc,YAAY,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/aptos/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAE/B,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC7D,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AACzG,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAA;AACvF,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA;AAClE,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC7D,cAAc,UAAU,CAAA;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEjD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAEhD,6BAA6B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sentio/sdk",
3
- "version": "2.22.0-rc.1",
3
+ "version": "2.22.0-rc.3",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "exports": {
@@ -69,8 +69,8 @@
69
69
  "typedoc": "^0.24.1",
70
70
  "utility-types": "^3.10.0",
71
71
  "yaml": "^2.2.1",
72
- "@sentio/protos": "2.22.0-rc.1",
73
- "@sentio/runtime": "^2.22.0-rc.1"
72
+ "@sentio/protos": "2.22.0-rc.3",
73
+ "@sentio/runtime": "^2.22.0-rc.3"
74
74
  },
75
75
  "peerDependencies": {
76
76
  "tsup": "npm:@sentio/tsup@^6.7.0"
@@ -17,9 +17,16 @@ import {
17
17
 
18
18
  import { ServerError, Status } from 'nice-grpc'
19
19
 
20
- import { AptosAccountProcessorState, AptosProcessorState } from './aptos-processor.js'
20
+ import { AptosProcessorState, AptosResourceProcessorState } from './aptos-processor.js'
21
21
 
22
22
  import { initCoinList } from './ext/coin.js'
23
+ import { AptosChainId } from '@sentio/chain'
24
+ import { AptosResourcesContext } from './context.js'
25
+ import {
26
+ AptosResourceProcessorTemplate,
27
+ AptosResourceProcessorTemplateState,
28
+ } from './aptos-resource-processor-template.js'
29
+ import { AptosNetwork } from './network.js'
23
30
 
24
31
  interface Handlers {
25
32
  aptosEventHandlers: ((event: Data_AptEvent) => Promise<ProcessResult>)[]
@@ -34,8 +41,27 @@ export class AptosPlugin extends Plugin {
34
41
  aptosResourceHandlers: [],
35
42
  }
36
43
 
37
- async start(start: StartRequest) {
44
+ async start(request: StartRequest) {
38
45
  await initCoinList()
46
+
47
+ const allowedChainIds = new Set<string>(Object.values(AptosChainId))
48
+ for (const instance of request.templateInstances) {
49
+ if (!allowedChainIds.has(instance.contract?.chainId || '')) {
50
+ continue
51
+ }
52
+
53
+ const template: AptosResourceProcessorTemplate =
54
+ AptosResourceProcessorTemplateState.INSTANCE.getValues()[instance.templateId]
55
+
56
+ template.bind(
57
+ {
58
+ address: instance.contract?.address || '',
59
+ network: <AptosNetwork>instance.contract?.chainId || AptosNetwork.MAIN_NET,
60
+ startVersion: instance.startBlock || 0n,
61
+ },
62
+ NoopContext
63
+ )
64
+ }
39
65
  }
40
66
 
41
67
  async configure(config: ProcessConfigResponse) {
@@ -92,7 +118,7 @@ export class AptosPlugin extends Plugin {
92
118
  config.contractConfigs.push(contractConfig)
93
119
  }
94
120
 
95
- for (const aptosProcessor of AptosAccountProcessorState.INSTANCE.getValues()) {
121
+ for (const aptosProcessor of AptosResourceProcessorState.INSTANCE.getValues()) {
96
122
  const accountConfig = AccountConfig.fromPartial({
97
123
  address: aptosProcessor.config.address,
98
124
  chainId: aptosProcessor.getChainId(),
@@ -194,3 +220,5 @@ export class AptosPlugin extends Plugin {
194
220
  }
195
221
 
196
222
  PluginManager.INSTANCE.register(new AptosPlugin())
223
+
224
+ const NoopContext = new AptosResourcesContext(AptosChainId.APTOS_MAINNET, '', 0n, 1, {})
@@ -16,6 +16,7 @@ import {
16
16
  ProcessResult,
17
17
  Data_AptEvent,
18
18
  Data_AptCall,
19
+ MoveAccountFetchConfig,
19
20
  } from '@sentio/protos'
20
21
  import { ServerError, Status } from 'nice-grpc'
21
22
  import {
@@ -34,6 +35,10 @@ const DEFAULT_FETCH_CONFIG: MoveFetchConfig = {
34
35
  allEvents: true,
35
36
  }
36
37
 
38
+ export const DEFAULT_RESOURCE_FETCH_CONFIG: MoveAccountFetchConfig = {
39
+ owned: true,
40
+ }
41
+
37
42
  type IndexConfigure = {
38
43
  address: string
39
44
  network: AptosNetwork
@@ -47,6 +52,7 @@ class ResourceHandlder {
47
52
  versionInterval?: HandleInterval
48
53
  timeIntervalInMinutes?: HandleInterval
49
54
  handler: (resource: Data_AptResource) => Promise<ProcessResult>
55
+ fetchConfig: MoveAccountFetchConfig
50
56
  }
51
57
 
52
58
  export class AptosProcessorState extends ListStateStorage<AptosBaseProcessor> {
@@ -226,8 +232,8 @@ export class AptosModulesProcessor extends AptosBaseProcessor {
226
232
  }
227
233
  }
228
234
 
229
- export class AptosAccountProcessorState extends ListStateStorage<AptosResourcesProcessor> {
230
- static INSTANCE = new AptosAccountProcessorState()
235
+ export class AptosResourceProcessorState extends ListStateStorage<AptosResourcesProcessor> {
236
+ static INSTANCE = new AptosResourceProcessorState()
231
237
  }
232
238
 
233
239
  export class AptosResourcesProcessor {
@@ -241,18 +247,19 @@ export class AptosResourcesProcessor {
241
247
 
242
248
  protected constructor(options: AptosBindOptions) {
243
249
  this.config = configure(options)
244
- AptosAccountProcessorState.INSTANCE.addValue(this)
250
+ AptosResourceProcessorState.INSTANCE.addValue(this)
245
251
  }
246
252
 
247
253
  getChainId(): string {
248
254
  return this.config.network
249
255
  }
250
256
 
251
- private onInterval(
257
+ onInterval(
252
258
  handler: (resources: MoveResource[], ctx: AptosResourcesContext) => PromiseOrVoid,
253
259
  timeInterval: HandleInterval | undefined,
254
260
  versionInterval: HandleInterval | undefined,
255
- type: string | undefined
261
+ type: string | undefined,
262
+ fetchConfig: Partial<MoveAccountFetchConfig> | undefined
256
263
  ): this {
257
264
  const processor = this
258
265
  this.resourcesHandlers.push({
@@ -275,6 +282,7 @@ export class AptosResourcesProcessor {
275
282
  timeIntervalInMinutes: timeInterval,
276
283
  versionInterval: versionInterval,
277
284
  type: type,
285
+ fetchConfig: { ...DEFAULT_RESOURCE_FETCH_CONFIG, ...fetchConfig },
278
286
  })
279
287
  return this
280
288
  }
@@ -283,7 +291,8 @@ export class AptosResourcesProcessor {
283
291
  handler: (resources: MoveResource[], ctx: AptosResourcesContext) => PromiseOrVoid,
284
292
  timeIntervalInMinutes = 60,
285
293
  backfillTimeIntervalInMinutes = 240,
286
- type?: string
294
+ type?: string,
295
+ fetchConfig?: Partial<MoveAccountFetchConfig>
287
296
  ): this {
288
297
  return this.onInterval(
289
298
  handler,
@@ -292,7 +301,8 @@ export class AptosResourcesProcessor {
292
301
  backfillInterval: backfillTimeIntervalInMinutes,
293
302
  },
294
303
  undefined,
295
- type
304
+ type,
305
+ fetchConfig
296
306
  )
297
307
  }
298
308
 
@@ -300,13 +310,15 @@ export class AptosResourcesProcessor {
300
310
  handler: (resources: MoveResource[], ctx: AptosResourcesContext) => PromiseOrVoid,
301
311
  versionInterval = 100000,
302
312
  backfillVersionInterval = 400000,
303
- typePrefix?: string
313
+ typePrefix?: string,
314
+ fetchConfig?: Partial<MoveAccountFetchConfig>
304
315
  ): this {
305
316
  return this.onInterval(
306
317
  handler,
307
318
  undefined,
308
319
  { recentInterval: versionInterval, backfillInterval: backfillVersionInterval },
309
- typePrefix
320
+ typePrefix,
321
+ fetchConfig
310
322
  )
311
323
  }
312
324
  }
@@ -0,0 +1,123 @@
1
+ import { ListStateStorage } from '@sentio/runtime'
2
+ import { TemplateInstanceState } from '../core/template.js'
3
+ import { AptosResourcesContext } from './context.js'
4
+ import { AptosBindOptions } from './network.js'
5
+ import { AptosResourcesProcessor, DEFAULT_RESOURCE_FETCH_CONFIG } from './aptos-processor.js'
6
+ import { HandleInterval, MoveAccountFetchConfig } from '@sentio/protos'
7
+ import { MoveResource } from './move-types.js'
8
+ import { PromiseOrVoid } from '../core/index.js'
9
+
10
+ export class AptosResourceProcessorTemplateState extends ListStateStorage<AptosResourceProcessorTemplate> {
11
+ static INSTANCE = new AptosResourceProcessorTemplateState()
12
+ }
13
+
14
+ class Handler {
15
+ type?: string
16
+ checkpointInterval?: HandleInterval
17
+ timeIntervalInMinutes?: HandleInterval
18
+ handler: (resources: MoveResource[], ctx: AptosResourcesContext) => PromiseOrVoid
19
+ fetchConfig: MoveAccountFetchConfig
20
+ }
21
+
22
+ export class AptosResourceProcessorTemplate {
23
+ id: number
24
+ binds = new Set<string>()
25
+ handlers: Handler[] = []
26
+
27
+ constructor() {
28
+ this.id = AptosResourceProcessorTemplateState.INSTANCE.getValues().length
29
+ AptosResourceProcessorTemplateState.INSTANCE.addValue(this)
30
+ }
31
+
32
+ createProcessor(options: AptosBindOptions): AptosResourcesProcessor {
33
+ return AptosResourcesProcessor.bind(options)
34
+ }
35
+
36
+ bind(options: AptosBindOptions, ctx: AptosResourcesContext): void {
37
+ options.network = options.network || ctx.network
38
+ options.startVersion = options.startVersion || ctx.version
39
+ const id = options.address
40
+
41
+ const sig = [options.network, id].join('_')
42
+ if (this.binds.has(sig)) {
43
+ console.log(`Same object id can be bind to one template only once, ignore duplicate bind: ${sig}`)
44
+ return
45
+ }
46
+ this.binds.add(sig)
47
+
48
+ const processor = this.createProcessor(options)
49
+ for (const h of this.handlers) {
50
+ processor.onInterval(h.handler, h.timeIntervalInMinutes, h.checkpointInterval, h.type, h.fetchConfig)
51
+ }
52
+ const config = processor.config
53
+
54
+ ctx.update({
55
+ states: {
56
+ configUpdated: true,
57
+ },
58
+ })
59
+ TemplateInstanceState.INSTANCE.addValue({
60
+ templateId: this.id,
61
+ contract: {
62
+ name: '',
63
+ chainId: config.network,
64
+ address: config.address,
65
+ abi: '',
66
+ },
67
+ startBlock: config.startVersion,
68
+ endBlock: 0n,
69
+ })
70
+ }
71
+
72
+ protected onInterval(
73
+ handler: (resources: MoveResource[], ctx: AptosResourcesContext) => PromiseOrVoid,
74
+ timeInterval: HandleInterval | undefined,
75
+ checkpointInterval: HandleInterval | undefined,
76
+ type: string | undefined,
77
+ fetchConfig: Partial<MoveAccountFetchConfig> | undefined
78
+ ): this {
79
+ this.handlers.push({
80
+ handler: handler,
81
+ timeIntervalInMinutes: timeInterval,
82
+ checkpointInterval: checkpointInterval,
83
+ type,
84
+ fetchConfig: { ...DEFAULT_RESOURCE_FETCH_CONFIG, ...fetchConfig },
85
+ })
86
+ return this
87
+ }
88
+
89
+ public onTimeInterval(
90
+ handler: (resources: MoveResource[], ctx: AptosResourcesContext) => PromiseOrVoid,
91
+ timeIntervalInMinutes = 60,
92
+ backfillTimeIntervalInMinutes = 240,
93
+ type?: string,
94
+ fetchConfig?: Partial<MoveAccountFetchConfig>
95
+ ): this {
96
+ return this.onInterval(
97
+ handler,
98
+ {
99
+ recentInterval: timeIntervalInMinutes,
100
+ backfillInterval: backfillTimeIntervalInMinutes,
101
+ },
102
+ undefined,
103
+ type,
104
+ fetchConfig
105
+ )
106
+ }
107
+
108
+ public onVersionInterval(
109
+ handler: (resources: MoveResource[], ctx: AptosResourcesContext) => PromiseOrVoid,
110
+ checkpointInterval = 100000,
111
+ backfillCheckpointInterval = 400000,
112
+ type?: string,
113
+ fetchConfig?: Partial<MoveAccountFetchConfig>
114
+ ): this {
115
+ return this.onInterval(
116
+ handler,
117
+ undefined,
118
+ { recentInterval: checkpointInterval, backfillInterval: backfillCheckpointInterval },
119
+ type,
120
+ fetchConfig
121
+ )
122
+ }
123
+ }
@@ -2,6 +2,7 @@ export * from './move-types.js'
2
2
  export type { TypedEventInstance, TypedFunctionPayload, TypedMoveResource } from './models.js'
3
3
  export { defaultMoveCoder, MoveCoder } from './move-coder.js'
4
4
  export { AptosBaseProcessor, AptosResourcesProcessor, AptosModulesProcessor } from './aptos-processor.js'
5
+ export { AptosResourceProcessorTemplate } from './aptos-resource-processor-template.js'
5
6
  export { AptosContext, AptosResourcesContext } from './context.js'
6
7
  export { AptosBindOptions, AptosNetwork } from './network.js'
7
8
  export * from './api.js'
@@ -11,4 +12,4 @@ export { AptosPlugin } from './aptos-plugin.js'
11
12
 
12
13
  export { BUILTIN_TYPES } from '../move/types.js'
13
14
 
14
- export * from './utils.js'
15
+ // export * from './utils.js'