@sentio/sdk 3.2.0 → 3.3.0-rc.2

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.
@@ -1,5 +1,5 @@
1
1
  import { errorString, mergeProcessResults, Plugin, PluginManager, USER_PROCESSOR } from '@sentio/runtime';
2
- import { ContractConfig, HandlerType } from '@sentio/protos';
2
+ import { ContractConfig, HandlerType, OnIntervalConfig } from '@sentio/protos';
3
3
  import { ServerError, Status } from 'nice-grpc';
4
4
  import { SolanaProcessorState } from './solana-processor.js';
5
5
  export class SolanaPlugin extends Plugin {
@@ -25,21 +25,41 @@ export class SolanaPlugin extends Plugin {
25
25
  address: solanaProcessor.address,
26
26
  abi: ''
27
27
  },
28
- startBlock: solanaProcessor.config.startSlot,
29
- instructionConfig: {
28
+ startBlock: solanaProcessor.config.startSlot
29
+ });
30
+ if (solanaProcessor.address && solanaProcessor.address != '*') {
31
+ let fetchTx = false;
32
+ for (const fetchConfig of solanaProcessor.instructionHandlerMap.values()) {
33
+ if (fetchConfig.handlerOptions?.fetchTx) {
34
+ fetchTx = true;
35
+ break;
36
+ }
37
+ }
38
+ contractConfig.instructionConfig = {
30
39
  innerInstruction: solanaProcessor.processInnerInstruction,
31
40
  parsedInstruction: solanaProcessor.fromParsedInstruction !== null,
32
- rawDataInstruction: solanaProcessor.decodeInstruction !== null
33
- }
34
- });
41
+ rawDataInstruction: solanaProcessor.decodeInstruction !== null,
42
+ fetchTx: fetchTx
43
+ };
44
+ }
45
+ for (const [idx, handler] of solanaProcessor.blockHandlers.entries()) {
46
+ contractConfig.intervalConfigs.push(OnIntervalConfig.fromPartial({
47
+ handlerId: idx,
48
+ minutesInterval: handler.timeIntervalInMinutes,
49
+ slotInterval: handler.slotInterval,
50
+ handlerName: handler.handlerName
51
+ }));
52
+ }
35
53
  config.contractConfigs.push(contractConfig);
36
54
  }
37
55
  }
38
- supportedHandlers = [HandlerType.SOL_INSTRUCTION];
56
+ supportedHandlers = [HandlerType.SOL_INSTRUCTION, HandlerType.SOL_BLOCK];
39
57
  processBinding(request) {
40
58
  switch (request.handlerType) {
41
59
  case HandlerType.SOL_INSTRUCTION:
42
60
  return this.processSolInstruction(request);
61
+ case HandlerType.SOL_BLOCK:
62
+ return this.processSolBlock(request);
43
63
  default:
44
64
  throw new ServerError(Status.INVALID_ARGUMENT, 'No handle type registered ' + request.handlerType);
45
65
  }
@@ -55,7 +75,7 @@ export class SolanaPlugin extends Plugin {
55
75
  const promises = [];
56
76
  // Only have instruction handlers for solana processors
57
77
  for (const processor of SolanaProcessorState.INSTANCE.getValues()) {
58
- if (processor.address === instruction.programAccountId) {
78
+ if (processor.address === instruction.programAccountId || processor.address === '*') {
59
79
  let parsedInstruction = null;
60
80
  try {
61
81
  if (instruction.parsed) {
@@ -76,7 +96,7 @@ export class SolanaPlugin extends Plugin {
76
96
  continue;
77
97
  }
78
98
  const res = processor
79
- .handleInstruction(parsedInstruction, instruction.accounts, insHandler, instruction.slot)
99
+ .handleInstruction(parsedInstruction, instruction.accounts, insHandler, instruction)
80
100
  .catch((e) => {
81
101
  throw new ServerError(Status.INTERNAL, 'Error processing instruction: ' + JSON.stringify(instruction) + '\n' + errorString(e));
82
102
  });
@@ -85,6 +105,22 @@ export class SolanaPlugin extends Plugin {
85
105
  }
86
106
  return mergeProcessResults(await Promise.all(promises));
87
107
  }
108
+ async processSolBlock(request) {
109
+ if (!request.data?.solBlock) {
110
+ throw new ServerError(Status.INVALID_ARGUMENT, 'block data cannot be empty');
111
+ }
112
+ const block = request.data.solBlock;
113
+ const promises = [];
114
+ for (const processor of SolanaProcessorState.INSTANCE.getValues()) {
115
+ for (const handlerId of request.handlerIds) {
116
+ const handler = processor.blockHandlers[handlerId];
117
+ if (handler) {
118
+ promises.push(processor.handleBlock(block, handler));
119
+ }
120
+ }
121
+ }
122
+ return mergeProcessResults(await Promise.all(promises));
123
+ }
88
124
  }
89
125
  PluginManager.INSTANCE.register(new SolanaPlugin());
90
126
  //# sourceMappingURL=solana-plugin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"solana-plugin.js","sourceRoot":"","sources":["../../src/solana/solana-plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"solana-plugin.js","sourceRoot":"","sources":["../../src/solana/solana-plugin.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,12 @@
1
- import { ProcessResult } from '@sentio/protos';
1
+ import { Data_SolBlock, Data_SolInstruction, HandleInterval, ProcessResult } from '@sentio/protos';
2
2
  import { SolanaContext } from './solana-context.js';
3
3
  import { Instruction } from '@coral-xyz/anchor';
4
- import { SolanaBindOptions } from './solana-options.js';
4
+ import { SolanaBindOptions, SolanaFetchConfig } from './solana-options.js';
5
5
  import { ListStateStorage } from '@sentio/runtime';
6
- import { Labels } from '../core/index.js';
6
+ import { Labels, PromiseOrVoid } from '../core/index.js';
7
7
  import { SolanaChainId } from '@sentio/chain';
8
8
  import { HandlerOptions } from '../core/handler-options.js';
9
+ import { BlockResponse } from '@solana/web3.js';
9
10
  type IndexConfigure = {
10
11
  startSlot: bigint;
11
12
  endSlot?: bigint;
@@ -16,13 +17,21 @@ export interface InstructionCoder {
16
17
  export type SolanaInstructionHandler = (instruction: Instruction, ctx: SolanaContext, accounts?: string[]) => void;
17
18
  export interface InstructionHandlerEntry {
18
19
  handler: SolanaInstructionHandler;
19
- handlerOptions?: HandlerOptions<object, Instruction>;
20
+ handlerOptions?: HandlerOptions<SolanaFetchConfig, Instruction>;
21
+ }
22
+ export type SolanaBlockHandler<T> = (block: T, ctx: SolanaContext) => PromiseOrVoid;
23
+ export interface SolanaBlockHandlerEntry<T> {
24
+ handler: SolanaBlockHandler<T>;
25
+ timeIntervalInMinutes?: HandleInterval;
26
+ slotInterval?: HandleInterval;
27
+ handlerName: string;
20
28
  }
21
29
  export declare class SolanaProcessorState extends ListStateStorage<SolanaBaseProcessor> {
22
30
  static INSTANCE: SolanaProcessorState;
23
31
  }
24
32
  export declare class SolanaBaseProcessor {
25
33
  instructionHandlerMap: Map<string, InstructionHandlerEntry>;
34
+ blockHandlers: SolanaBlockHandlerEntry<any>[];
26
35
  address: string;
27
36
  endpoint: string;
28
37
  contractName: string;
@@ -37,16 +46,24 @@ export declare class SolanaBaseProcessor {
37
46
  info: any;
38
47
  }) => Instruction | null;
39
48
  constructor(options: SolanaBindOptions);
40
- onInstruction(instructionName: string, handler: SolanaInstructionHandler, handlerOptions?: HandlerOptions<object, Instruction>): this;
49
+ onInstruction(instructionName: string, handler: SolanaInstructionHandler, handlerOptions?: HandlerOptions<SolanaFetchConfig, Instruction>): this;
50
+ onTimeInterval(handler: SolanaBlockHandler<Data_SolBlock>, timeIntervalInMinutes?: number, backfillTimeIntervalInMinutes?: number): this;
51
+ onBlockInterval(handler: SolanaBlockHandler<Data_SolBlock>, blockInterval?: number, backfillBlockInterval?: number): this;
52
+ onInterval<T>(handler: SolanaBlockHandler<T>, timeInterval: HandleInterval | undefined, slotInterval: HandleInterval | undefined): this;
41
53
  getParsedInstruction(ins: string | {
42
54
  type: string;
43
55
  info: any;
44
56
  }): Instruction | null;
45
57
  getInstructionHandler(parsedInstruction: Instruction): InstructionHandlerEntry | undefined;
46
- handleInstruction(parsedInstruction: Instruction, accounts: string[], handlerEntry: InstructionHandlerEntry, slot: bigint): Promise<ProcessResult>;
58
+ handleInstruction(parsedInstruction: Instruction, accounts: string[], handlerEntry: InstructionHandlerEntry, data: Data_SolInstruction): Promise<ProcessResult>;
59
+ handleBlock(rawBlock: Data_SolBlock, handlerEntry: SolanaBlockHandlerEntry<BlockResponse>): Promise<ProcessResult>;
47
60
  getPartitionKey(parsedInstruction: Instruction, handlerEntry: InstructionHandlerEntry): Promise<string | undefined>;
48
61
  startSlot(startSlot: bigint | number): this;
49
62
  endBlock(endBlock: bigint | number): this;
50
63
  }
64
+ export declare class SolanaGlobalProcessor extends SolanaBaseProcessor {
65
+ static bind(options: Omit<SolanaBindOptions, 'address'>): SolanaGlobalProcessor;
66
+ constructor(options: SolanaBindOptions);
67
+ }
51
68
  export {};
52
69
  //# sourceMappingURL=solana-processor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"solana-processor.d.ts","sourceRoot":"","sources":["../../src/solana/solana-processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAE3D,KAAK,cAAc,GAAG;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,WAAW,GAAG,IAAI,CAAA;CAC7E;AAED,MAAM,MAAM,wBAAwB,GAAG,CAAC,WAAW,EAAE,WAAW,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,IAAI,CAAA;AAElH,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,wBAAwB,CAAA;IACjC,cAAc,CAAC,EAAE,cAAc,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;CACrD;AAED,qBAAa,oBAAqB,SAAQ,gBAAgB,CAAC,mBAAmB,CAAC;IAC7E,MAAM,CAAC,QAAQ,EAAE,oBAAoB,CAA6B;CACnE;AAED,qBAAa,mBAAmB;IACvB,qBAAqB,EAAE,GAAG,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAY;IAC9E,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,aAAa,CAAA;IACtB,uBAAuB,EAAE,OAAO,CAAA;IAChC,MAAM,EAAE,cAAc,CAAoB;IAC1C,gBAAgB,EAAE,gBAAgB,CAAA;IAElC,iBAAiB,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;IAO7D,qBAAqB,EAAE,CAAC,WAAW,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,GAAG,CAAA;KAAE,KAAK,WAAW,GAAG,IAAI,CAAA;gBAE3E,OAAO,EAAE,iBAAiB;IAoB/B,aAAa,CAClB,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,wBAAwB,EACjC,cAAc,CAAC,EAAE,cAAc,CAAC,MAAM,EAAE,WAAW,CAAC;IAM/C,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,GAAG,CAAA;KAAE,GAAG,WAAW,GAAG,IAAI;IAYnF,qBAAqB,CAAC,iBAAiB,EAAE,WAAW,GAAG,uBAAuB,GAAG,SAAS;IAIpF,iBAAiB,CAC5B,iBAAiB,EAAE,WAAW,EAC9B,QAAQ,EAAE,MAAM,EAAE,EAClB,YAAY,EAAE,uBAAuB,EACrC,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,aAAa,CAAC;IAMZ,eAAe,CAC1B,iBAAiB,EAAE,WAAW,EAC9B,YAAY,EAAE,uBAAuB,GACpC,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IASvB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAKpC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;CAI1C"}
1
+ {"version":3,"file":"solana-processor.d.ts","sourceRoot":"","sources":["../../src/solana/solana-processor.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,14 @@
1
1
  import { SolanaContext } from './solana-context.js';
2
2
  import { ListStateStorage } from '@sentio/runtime';
3
+ import { ALL_ADDRESS } from '../core/index.js';
3
4
  import { SolanaChainId } from '@sentio/chain';
5
+ import { getHandlerName, proxyProcessor } from '../utils/metrics.js';
4
6
  export class SolanaProcessorState extends ListStateStorage {
5
7
  static INSTANCE = new SolanaProcessorState();
6
8
  }
7
9
  export class SolanaBaseProcessor {
8
10
  instructionHandlerMap = new Map();
11
+ blockHandlers = [];
9
12
  address;
10
13
  endpoint;
11
14
  contractName;
@@ -43,6 +46,24 @@ export class SolanaBaseProcessor {
43
46
  this.instructionHandlerMap.set(instructionName, { handler, handlerOptions });
44
47
  return this;
45
48
  }
49
+ onTimeInterval(handler, timeIntervalInMinutes = 60, backfillTimeIntervalInMinutes = 240) {
50
+ return this.onInterval(handler, { recentInterval: timeIntervalInMinutes, backfillInterval: backfillTimeIntervalInMinutes }, undefined);
51
+ }
52
+ onBlockInterval(handler, blockInterval = 1000, backfillBlockInterval = 4000) {
53
+ return this.onInterval(handler, undefined, {
54
+ recentInterval: blockInterval,
55
+ backfillInterval: backfillBlockInterval
56
+ });
57
+ }
58
+ onInterval(handler, timeInterval, slotInterval) {
59
+ this.blockHandlers.push({
60
+ handler: handler,
61
+ timeIntervalInMinutes: timeInterval,
62
+ slotInterval: slotInterval,
63
+ handlerName: getHandlerName()
64
+ });
65
+ return this;
66
+ }
46
67
  getParsedInstruction(ins) {
47
68
  if (ins) {
48
69
  if (ins.info) {
@@ -57,11 +78,21 @@ export class SolanaBaseProcessor {
57
78
  getInstructionHandler(parsedInstruction) {
58
79
  return this.instructionHandlerMap.get(parsedInstruction.name);
59
80
  }
60
- async handleInstruction(parsedInstruction, accounts, handlerEntry, slot) {
61
- const ctx = new SolanaContext(this.contractName, this.network, this.address, slot, this.baseLabels);
81
+ async handleInstruction(parsedInstruction, accounts, handlerEntry, data) {
82
+ let transaction = undefined;
83
+ if (data.rawTransaction) {
84
+ transaction = JSON.parse(data.rawTransaction);
85
+ }
86
+ const ctx = new SolanaContext(this.contractName, this.network, this.address, data.slot, this.baseLabels, transaction);
62
87
  await handlerEntry.handler(parsedInstruction, ctx, accounts);
63
88
  return ctx.stopAndGetResult();
64
89
  }
90
+ async handleBlock(rawBlock, handlerEntry) {
91
+ const ctx = new SolanaContext(this.contractName, this.network, this.address, rawBlock.slot, this.baseLabels);
92
+ const block = JSON.parse(rawBlock.rawBlock);
93
+ await handlerEntry.handler(block, ctx);
94
+ return ctx.stopAndGetResult();
95
+ }
65
96
  async getPartitionKey(parsedInstruction, handlerEntry) {
66
97
  const p = handlerEntry.handlerOptions?.partitionKey;
67
98
  if (!p)
@@ -80,4 +111,13 @@ export class SolanaBaseProcessor {
80
111
  return this;
81
112
  }
82
113
  }
114
+ export class SolanaGlobalProcessor extends SolanaBaseProcessor {
115
+ static bind(options) {
116
+ return new SolanaGlobalProcessor({ ...options, address: ALL_ADDRESS });
117
+ }
118
+ constructor(options) {
119
+ super(options);
120
+ return proxyProcessor(this);
121
+ }
122
+ }
83
123
  //# sourceMappingURL=solana-processor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"solana-processor.js","sourceRoot":"","sources":["../../src/solana/solana-processor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"solana-processor.js","sourceRoot":"","sources":["../../src/solana/solana-processor.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sentio/sdk",
3
- "version": "3.2.0",
3
+ "version": "3.3.0-rc.2",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "exports": {
@@ -97,8 +97,8 @@
97
97
  "typechain": "^8.3.2",
98
98
  "utility-types": "^3.11.0",
99
99
  "yaml": "^2.3.4",
100
- "@sentio/protos": "3.2.0",
101
- "@sentio/runtime": "^3.2.0"
100
+ "@sentio/protos": "3.3.0-rc.2",
101
+ "@sentio/runtime": "^3.3.0-rc.2"
102
102
  },
103
103
  "peerDependencies": {
104
104
  "@sentio/tsup": "^8.3.5-rc.1"