@sentio/sdk 1.33.2 → 1.34.1-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.
Files changed (38) hide show
  1. package/lib/aptos/context.js +0 -3
  2. package/lib/aptos/context.js.map +1 -1
  3. package/lib/core/context.js +0 -6
  4. package/lib/core/context.js.map +1 -1
  5. package/lib/core/logger.js.map +1 -1
  6. package/lib/gen/chainquery/protos/chainquery.d.ts +1 -1
  7. package/lib/gen/chainquery/protos/chainquery.js +108 -211
  8. package/lib/gen/chainquery/protos/chainquery.js.map +1 -1
  9. package/lib/gen/google/protobuf/empty.js.map +1 -1
  10. package/lib/gen/google/protobuf/timestamp.js +5 -9
  11. package/lib/gen/google/protobuf/timestamp.js.map +1 -1
  12. package/lib/gen/processor/protos/processor.d.ts +119 -189
  13. package/lib/gen/processor/protos/processor.js +783 -1118
  14. package/lib/gen/processor/protos/processor.js.map +1 -1
  15. package/lib/gen/service/price/protos/price.d.ts +4 -4
  16. package/lib/gen/service/price/protos/price.js +15 -27
  17. package/lib/gen/service/price/protos/price.js.map +1 -1
  18. package/lib/release.config.js +2 -2
  19. package/lib/service.d.ts +8 -8
  20. package/lib/service.js +47 -160
  21. package/lib/service.js.map +1 -1
  22. package/lib/testing/test-processor-server.d.ts +7 -5
  23. package/lib/testing/test-processor-server.js +42 -19
  24. package/lib/testing/test-processor-server.js.map +1 -1
  25. package/lib/utils/token.d.ts +1 -1
  26. package/lib/utils/token.js.map +1 -1
  27. package/package.json +1 -1
  28. package/src/aptos/context.ts +1 -3
  29. package/src/core/context.ts +1 -6
  30. package/src/core/logger.ts +1 -1
  31. package/src/gen/chainquery/protos/chainquery.ts +171 -379
  32. package/src/gen/google/protobuf/empty.ts +7 -19
  33. package/src/gen/google/protobuf/timestamp.ts +11 -31
  34. package/src/gen/processor/protos/processor.ts +1058 -1847
  35. package/src/gen/service/price/protos/price.ts +38 -103
  36. package/src/service.ts +59 -210
  37. package/src/testing/test-processor-server.ts +47 -28
  38. package/src/utils/token.ts +1 -1
@@ -1,9 +1,9 @@
1
- import { CallContext, CallOptions } from "nice-grpc-common";
2
1
  import Long from "long";
2
+ import type { CallContext, CallOptions } from "nice-grpc-common";
3
3
  import _m0 from "protobufjs/minimal";
4
4
  export interface CoinID {
5
- symbol: string | undefined;
6
- address: CoinID_AddressIdentifier | undefined;
5
+ symbol?: string | undefined;
6
+ address?: CoinID_AddressIdentifier | undefined;
7
7
  }
8
8
  export interface CoinID_AddressIdentifier {
9
9
  address: string;
@@ -72,7 +72,7 @@ export declare const PriceServiceDefinition: {
72
72
  };
73
73
  };
74
74
  };
75
- export interface PriceServiceServiceImplementation<CallContextExt = {}> {
75
+ export interface PriceServiceImplementation<CallContextExt = {}> {
76
76
  getPrice(request: GetPriceRequest, context: CallContext & CallContextExt): Promise<DeepPartial<GetPriceResponse>>;
77
77
  }
78
78
  export interface PriceServiceClient<CallOptionsExt = {}> {
@@ -4,9 +4,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.PriceServiceDefinition = exports.GetPriceResponse = exports.GetPriceRequest = exports.CoinID_AddressIdentifier = exports.CoinID = void 0;
7
- const timestamp_1 = require("../../../google/protobuf/timestamp");
7
+ /* eslint-disable */
8
8
  const long_1 = __importDefault(require("long"));
9
9
  const minimal_1 = __importDefault(require("protobufjs/minimal"));
10
+ const timestamp_1 = require("../../../google/protobuf/timestamp");
10
11
  function createBaseCoinID() {
11
12
  return { symbol: undefined, address: undefined };
12
13
  }
@@ -43,27 +44,22 @@ exports.CoinID = {
43
44
  fromJSON(object) {
44
45
  return {
45
46
  symbol: isSet(object.symbol) ? String(object.symbol) : undefined,
46
- address: isSet(object.address)
47
- ? exports.CoinID_AddressIdentifier.fromJSON(object.address)
48
- : undefined,
47
+ address: isSet(object.address) ? exports.CoinID_AddressIdentifier.fromJSON(object.address) : undefined,
49
48
  };
50
49
  },
51
50
  toJSON(message) {
52
51
  const obj = {};
53
52
  message.symbol !== undefined && (obj.symbol = message.symbol);
54
53
  message.address !== undefined &&
55
- (obj.address = message.address
56
- ? exports.CoinID_AddressIdentifier.toJSON(message.address)
57
- : undefined);
54
+ (obj.address = message.address ? exports.CoinID_AddressIdentifier.toJSON(message.address) : undefined);
58
55
  return obj;
59
56
  },
60
57
  fromPartial(object) {
61
58
  const message = createBaseCoinID();
62
59
  message.symbol = object.symbol ?? undefined;
63
- message.address =
64
- object.address !== undefined && object.address !== null
65
- ? exports.CoinID_AddressIdentifier.fromPartial(object.address)
66
- : undefined;
60
+ message.address = (object.address !== undefined && object.address !== null)
61
+ ? exports.CoinID_AddressIdentifier.fromPartial(object.address)
62
+ : undefined;
67
63
  return message;
68
64
  },
69
65
  };
@@ -154,27 +150,22 @@ exports.GetPriceRequest = {
154
150
  },
155
151
  fromJSON(object) {
156
152
  return {
157
- timestamp: isSet(object.timestamp)
158
- ? fromJsonTimestamp(object.timestamp)
159
- : undefined,
153
+ timestamp: isSet(object.timestamp) ? fromJsonTimestamp(object.timestamp) : undefined,
160
154
  coinId: isSet(object.coinId) ? exports.CoinID.fromJSON(object.coinId) : undefined,
161
155
  };
162
156
  },
163
157
  toJSON(message) {
164
158
  const obj = {};
165
- message.timestamp !== undefined &&
166
- (obj.timestamp = message.timestamp.toISOString());
167
- message.coinId !== undefined &&
168
- (obj.coinId = message.coinId ? exports.CoinID.toJSON(message.coinId) : undefined);
159
+ message.timestamp !== undefined && (obj.timestamp = message.timestamp.toISOString());
160
+ message.coinId !== undefined && (obj.coinId = message.coinId ? exports.CoinID.toJSON(message.coinId) : undefined);
169
161
  return obj;
170
162
  },
171
163
  fromPartial(object) {
172
164
  const message = createBaseGetPriceRequest();
173
165
  message.timestamp = object.timestamp ?? undefined;
174
- message.coinId =
175
- object.coinId !== undefined && object.coinId !== null
176
- ? exports.CoinID.fromPartial(object.coinId)
177
- : undefined;
166
+ message.coinId = (object.coinId !== undefined && object.coinId !== null)
167
+ ? exports.CoinID.fromPartial(object.coinId)
168
+ : undefined;
178
169
  return message;
179
170
  },
180
171
  };
@@ -214,16 +205,13 @@ exports.GetPriceResponse = {
214
205
  fromJSON(object) {
215
206
  return {
216
207
  price: isSet(object.price) ? Number(object.price) : 0,
217
- timestamp: isSet(object.timestamp)
218
- ? fromJsonTimestamp(object.timestamp)
219
- : undefined,
208
+ timestamp: isSet(object.timestamp) ? fromJsonTimestamp(object.timestamp) : undefined,
220
209
  };
221
210
  },
222
211
  toJSON(message) {
223
212
  const obj = {};
224
213
  message.price !== undefined && (obj.price = message.price);
225
- message.timestamp !== undefined &&
226
- (obj.timestamp = message.timestamp.toISOString());
214
+ message.timestamp !== undefined && (obj.timestamp = message.timestamp.toISOString());
227
215
  return obj;
228
216
  },
229
217
  fromPartial(object) {
@@ -1 +1 @@
1
- {"version":3,"file":"price.js","sourceRoot":"","sources":["../../../../../src/gen/service/price/protos/price.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable */\nimport { CallContext, CallOptions } from \"nice-grpc-common\";\nimport { Timestamp } from \"../../../google/protobuf/timestamp\";\nimport Long from \"long\";\nimport _m0 from \"protobufjs/minimal\";\n\nexport interface CoinID {\n symbol: string | undefined;\n address: CoinID_AddressIdentifier | undefined;\n}\n\nexport interface CoinID_AddressIdentifier {\n address: string;\n chain: string;\n}\n\nexport interface GetPriceRequest {\n timestamp: Date | undefined;\n coinId: CoinID | undefined;\n}\n\nexport interface GetPriceResponse {\n price: number;\n timestamp: Date | undefined;\n}\n\nfunction createBaseCoinID(): CoinID {\n return { symbol: undefined, address: undefined };\n}\n\nexport const CoinID = {\n encode(\n message: CoinID,\n writer: _m0.Writer = _m0.Writer.create()\n ): _m0.Writer {\n if (message.symbol !== undefined) {\n writer.uint32(18).string(message.symbol);\n }\n if (message.address !== undefined) {\n CoinID_AddressIdentifier.encode(\n message.address,\n writer.uint32(26).fork()\n ).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): CoinID {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseCoinID();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 2:\n message.symbol = reader.string();\n break;\n case 3:\n message.address = CoinID_AddressIdentifier.decode(\n reader,\n reader.uint32()\n );\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromJSON(object: any): CoinID {\n return {\n symbol: isSet(object.symbol) ? String(object.symbol) : undefined,\n address: isSet(object.address)\n ? CoinID_AddressIdentifier.fromJSON(object.address)\n : undefined,\n };\n },\n\n toJSON(message: CoinID): unknown {\n const obj: any = {};\n message.symbol !== undefined && (obj.symbol = message.symbol);\n message.address !== undefined &&\n (obj.address = message.address\n ? CoinID_AddressIdentifier.toJSON(message.address)\n : undefined);\n return obj;\n },\n\n fromPartial(object: DeepPartial<CoinID>): CoinID {\n const message = createBaseCoinID();\n message.symbol = object.symbol ?? undefined;\n message.address =\n object.address !== undefined && object.address !== null\n ? CoinID_AddressIdentifier.fromPartial(object.address)\n : undefined;\n return message;\n },\n};\n\nfunction createBaseCoinID_AddressIdentifier(): CoinID_AddressIdentifier {\n return { address: \"\", chain: \"\" };\n}\n\nexport const CoinID_AddressIdentifier = {\n encode(\n message: CoinID_AddressIdentifier,\n writer: _m0.Writer = _m0.Writer.create()\n ): _m0.Writer {\n if (message.address !== \"\") {\n writer.uint32(10).string(message.address);\n }\n if (message.chain !== \"\") {\n writer.uint32(18).string(message.chain);\n }\n return writer;\n },\n\n decode(\n input: _m0.Reader | Uint8Array,\n length?: number\n ): CoinID_AddressIdentifier {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseCoinID_AddressIdentifier();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.address = reader.string();\n break;\n case 2:\n message.chain = reader.string();\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromJSON(object: any): CoinID_AddressIdentifier {\n return {\n address: isSet(object.address) ? String(object.address) : \"\",\n chain: isSet(object.chain) ? String(object.chain) : \"\",\n };\n },\n\n toJSON(message: CoinID_AddressIdentifier): unknown {\n const obj: any = {};\n message.address !== undefined && (obj.address = message.address);\n message.chain !== undefined && (obj.chain = message.chain);\n return obj;\n },\n\n fromPartial(\n object: DeepPartial<CoinID_AddressIdentifier>\n ): CoinID_AddressIdentifier {\n const message = createBaseCoinID_AddressIdentifier();\n message.address = object.address ?? \"\";\n message.chain = object.chain ?? \"\";\n return message;\n },\n};\n\nfunction createBaseGetPriceRequest(): GetPriceRequest {\n return { timestamp: undefined, coinId: undefined };\n}\n\nexport const GetPriceRequest = {\n encode(\n message: GetPriceRequest,\n writer: _m0.Writer = _m0.Writer.create()\n ): _m0.Writer {\n if (message.timestamp !== undefined) {\n Timestamp.encode(\n toTimestamp(message.timestamp),\n writer.uint32(10).fork()\n ).ldelim();\n }\n if (message.coinId !== undefined) {\n CoinID.encode(message.coinId, writer.uint32(18).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetPriceRequest {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetPriceRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.timestamp = fromTimestamp(\n Timestamp.decode(reader, reader.uint32())\n );\n break;\n case 2:\n message.coinId = CoinID.decode(reader, reader.uint32());\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromJSON(object: any): GetPriceRequest {\n return {\n timestamp: isSet(object.timestamp)\n ? fromJsonTimestamp(object.timestamp)\n : undefined,\n coinId: isSet(object.coinId) ? CoinID.fromJSON(object.coinId) : undefined,\n };\n },\n\n toJSON(message: GetPriceRequest): unknown {\n const obj: any = {};\n message.timestamp !== undefined &&\n (obj.timestamp = message.timestamp.toISOString());\n message.coinId !== undefined &&\n (obj.coinId = message.coinId ? CoinID.toJSON(message.coinId) : undefined);\n return obj;\n },\n\n fromPartial(object: DeepPartial<GetPriceRequest>): GetPriceRequest {\n const message = createBaseGetPriceRequest();\n message.timestamp = object.timestamp ?? undefined;\n message.coinId =\n object.coinId !== undefined && object.coinId !== null\n ? CoinID.fromPartial(object.coinId)\n : undefined;\n return message;\n },\n};\n\nfunction createBaseGetPriceResponse(): GetPriceResponse {\n return { price: 0, timestamp: undefined };\n}\n\nexport const GetPriceResponse = {\n encode(\n message: GetPriceResponse,\n writer: _m0.Writer = _m0.Writer.create()\n ): _m0.Writer {\n if (message.price !== 0) {\n writer.uint32(9).double(message.price);\n }\n if (message.timestamp !== undefined) {\n Timestamp.encode(\n toTimestamp(message.timestamp),\n writer.uint32(18).fork()\n ).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetPriceResponse {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetPriceResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.price = reader.double();\n break;\n case 2:\n message.timestamp = fromTimestamp(\n Timestamp.decode(reader, reader.uint32())\n );\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromJSON(object: any): GetPriceResponse {\n return {\n price: isSet(object.price) ? Number(object.price) : 0,\n timestamp: isSet(object.timestamp)\n ? fromJsonTimestamp(object.timestamp)\n : undefined,\n };\n },\n\n toJSON(message: GetPriceResponse): unknown {\n const obj: any = {};\n message.price !== undefined && (obj.price = message.price);\n message.timestamp !== undefined &&\n (obj.timestamp = message.timestamp.toISOString());\n return obj;\n },\n\n fromPartial(object: DeepPartial<GetPriceResponse>): GetPriceResponse {\n const message = createBaseGetPriceResponse();\n message.price = object.price ?? 0;\n message.timestamp = object.timestamp ?? undefined;\n return message;\n },\n};\n\nexport type PriceServiceDefinition = typeof PriceServiceDefinition;\nexport const PriceServiceDefinition = {\n name: \"PriceService\",\n fullName: \"price_service.PriceService\",\n methods: {\n getPrice: {\n name: \"GetPrice\",\n requestType: GetPriceRequest,\n requestStream: false,\n responseType: GetPriceResponse,\n responseStream: false,\n options: {},\n },\n },\n} as const;\n\nexport interface PriceServiceServiceImplementation<CallContextExt = {}> {\n getPrice(\n request: GetPriceRequest,\n context: CallContext & CallContextExt\n ): Promise<DeepPartial<GetPriceResponse>>;\n}\n\nexport interface PriceServiceClient<CallOptionsExt = {}> {\n getPrice(\n request: DeepPartial<GetPriceRequest>,\n options?: CallOptions & CallOptionsExt\n ): Promise<GetPriceResponse>;\n}\n\ntype Builtin =\n | Date\n | Function\n | Uint8Array\n | string\n | number\n | boolean\n | undefined;\n\ntype DeepPartial<T> = T extends Builtin\n ? T\n : T extends Long\n ? string | number | Long\n : T extends Array<infer U>\n ? Array<DeepPartial<U>>\n : T extends ReadonlyArray<infer U>\n ? ReadonlyArray<DeepPartial<U>>\n : T extends {}\n ? { [K in keyof T]?: DeepPartial<T[K]> }\n : Partial<T>;\n\nfunction toTimestamp(date: Date): Timestamp {\n const seconds = numberToLong(date.getTime() / 1_000);\n const nanos = (date.getTime() % 1_000) * 1_000_000;\n return { seconds, nanos };\n}\n\nfunction fromTimestamp(t: Timestamp): Date {\n let millis = t.seconds.toNumber() * 1_000;\n millis += t.nanos / 1_000_000;\n return new Date(millis);\n}\n\nfunction fromJsonTimestamp(o: any): Date {\n if (o instanceof Date) {\n return o;\n } else if (typeof o === \"string\") {\n return new Date(o);\n } else {\n return fromTimestamp(Timestamp.fromJSON(o));\n }\n}\n\nfunction numberToLong(number: number) {\n return Long.fromNumber(number);\n}\n\nif (_m0.util.Long !== Long) {\n _m0.util.Long = Long as any;\n _m0.configure();\n}\n\nfunction isSet(value: any): boolean {\n return value !== null && value !== undefined;\n}\n"]}
1
+ {"version":3,"file":"price.js","sourceRoot":"","sources":["../../../../../src/gen/service/price/protos/price.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable */\nimport Long from \"long\";\nimport type { CallContext, CallOptions } from \"nice-grpc-common\";\nimport _m0 from \"protobufjs/minimal\";\nimport { Timestamp } from \"../../../google/protobuf/timestamp\";\n\nexport interface CoinID {\n symbol?: string | undefined;\n address?: CoinID_AddressIdentifier | undefined;\n}\n\nexport interface CoinID_AddressIdentifier {\n address: string;\n chain: string;\n}\n\nexport interface GetPriceRequest {\n timestamp: Date | undefined;\n coinId: CoinID | undefined;\n}\n\nexport interface GetPriceResponse {\n price: number;\n timestamp: Date | undefined;\n}\n\nfunction createBaseCoinID(): CoinID {\n return { symbol: undefined, address: undefined };\n}\n\nexport const CoinID = {\n encode(message: CoinID, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.symbol !== undefined) {\n writer.uint32(18).string(message.symbol);\n }\n if (message.address !== undefined) {\n CoinID_AddressIdentifier.encode(message.address, writer.uint32(26).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): CoinID {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseCoinID();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 2:\n message.symbol = reader.string();\n break;\n case 3:\n message.address = CoinID_AddressIdentifier.decode(reader, reader.uint32());\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromJSON(object: any): CoinID {\n return {\n symbol: isSet(object.symbol) ? String(object.symbol) : undefined,\n address: isSet(object.address) ? CoinID_AddressIdentifier.fromJSON(object.address) : undefined,\n };\n },\n\n toJSON(message: CoinID): unknown {\n const obj: any = {};\n message.symbol !== undefined && (obj.symbol = message.symbol);\n message.address !== undefined &&\n (obj.address = message.address ? CoinID_AddressIdentifier.toJSON(message.address) : undefined);\n return obj;\n },\n\n fromPartial(object: DeepPartial<CoinID>): CoinID {\n const message = createBaseCoinID();\n message.symbol = object.symbol ?? undefined;\n message.address = (object.address !== undefined && object.address !== null)\n ? CoinID_AddressIdentifier.fromPartial(object.address)\n : undefined;\n return message;\n },\n};\n\nfunction createBaseCoinID_AddressIdentifier(): CoinID_AddressIdentifier {\n return { address: \"\", chain: \"\" };\n}\n\nexport const CoinID_AddressIdentifier = {\n encode(message: CoinID_AddressIdentifier, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.address !== \"\") {\n writer.uint32(10).string(message.address);\n }\n if (message.chain !== \"\") {\n writer.uint32(18).string(message.chain);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): CoinID_AddressIdentifier {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseCoinID_AddressIdentifier();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.address = reader.string();\n break;\n case 2:\n message.chain = reader.string();\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromJSON(object: any): CoinID_AddressIdentifier {\n return {\n address: isSet(object.address) ? String(object.address) : \"\",\n chain: isSet(object.chain) ? String(object.chain) : \"\",\n };\n },\n\n toJSON(message: CoinID_AddressIdentifier): unknown {\n const obj: any = {};\n message.address !== undefined && (obj.address = message.address);\n message.chain !== undefined && (obj.chain = message.chain);\n return obj;\n },\n\n fromPartial(object: DeepPartial<CoinID_AddressIdentifier>): CoinID_AddressIdentifier {\n const message = createBaseCoinID_AddressIdentifier();\n message.address = object.address ?? \"\";\n message.chain = object.chain ?? \"\";\n return message;\n },\n};\n\nfunction createBaseGetPriceRequest(): GetPriceRequest {\n return { timestamp: undefined, coinId: undefined };\n}\n\nexport const GetPriceRequest = {\n encode(message: GetPriceRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.timestamp !== undefined) {\n Timestamp.encode(toTimestamp(message.timestamp), writer.uint32(10).fork()).ldelim();\n }\n if (message.coinId !== undefined) {\n CoinID.encode(message.coinId, writer.uint32(18).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetPriceRequest {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetPriceRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.timestamp = fromTimestamp(Timestamp.decode(reader, reader.uint32()));\n break;\n case 2:\n message.coinId = CoinID.decode(reader, reader.uint32());\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromJSON(object: any): GetPriceRequest {\n return {\n timestamp: isSet(object.timestamp) ? fromJsonTimestamp(object.timestamp) : undefined,\n coinId: isSet(object.coinId) ? CoinID.fromJSON(object.coinId) : undefined,\n };\n },\n\n toJSON(message: GetPriceRequest): unknown {\n const obj: any = {};\n message.timestamp !== undefined && (obj.timestamp = message.timestamp.toISOString());\n message.coinId !== undefined && (obj.coinId = message.coinId ? CoinID.toJSON(message.coinId) : undefined);\n return obj;\n },\n\n fromPartial(object: DeepPartial<GetPriceRequest>): GetPriceRequest {\n const message = createBaseGetPriceRequest();\n message.timestamp = object.timestamp ?? undefined;\n message.coinId = (object.coinId !== undefined && object.coinId !== null)\n ? CoinID.fromPartial(object.coinId)\n : undefined;\n return message;\n },\n};\n\nfunction createBaseGetPriceResponse(): GetPriceResponse {\n return { price: 0, timestamp: undefined };\n}\n\nexport const GetPriceResponse = {\n encode(message: GetPriceResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.price !== 0) {\n writer.uint32(9).double(message.price);\n }\n if (message.timestamp !== undefined) {\n Timestamp.encode(toTimestamp(message.timestamp), writer.uint32(18).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetPriceResponse {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetPriceResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.price = reader.double();\n break;\n case 2:\n message.timestamp = fromTimestamp(Timestamp.decode(reader, reader.uint32()));\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromJSON(object: any): GetPriceResponse {\n return {\n price: isSet(object.price) ? Number(object.price) : 0,\n timestamp: isSet(object.timestamp) ? fromJsonTimestamp(object.timestamp) : undefined,\n };\n },\n\n toJSON(message: GetPriceResponse): unknown {\n const obj: any = {};\n message.price !== undefined && (obj.price = message.price);\n message.timestamp !== undefined && (obj.timestamp = message.timestamp.toISOString());\n return obj;\n },\n\n fromPartial(object: DeepPartial<GetPriceResponse>): GetPriceResponse {\n const message = createBaseGetPriceResponse();\n message.price = object.price ?? 0;\n message.timestamp = object.timestamp ?? undefined;\n return message;\n },\n};\n\nexport type PriceServiceDefinition = typeof PriceServiceDefinition;\nexport const PriceServiceDefinition = {\n name: \"PriceService\",\n fullName: \"price_service.PriceService\",\n methods: {\n getPrice: {\n name: \"GetPrice\",\n requestType: GetPriceRequest,\n requestStream: false,\n responseType: GetPriceResponse,\n responseStream: false,\n options: {},\n },\n },\n} as const;\n\nexport interface PriceServiceImplementation<CallContextExt = {}> {\n getPrice(request: GetPriceRequest, context: CallContext & CallContextExt): Promise<DeepPartial<GetPriceResponse>>;\n}\n\nexport interface PriceServiceClient<CallOptionsExt = {}> {\n getPrice(request: DeepPartial<GetPriceRequest>, options?: CallOptions & CallOptionsExt): Promise<GetPriceResponse>;\n}\n\ntype Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;\n\ntype DeepPartial<T> = T extends Builtin ? T\n : T extends Long ? string | number | Long : T extends Array<infer U> ? Array<DeepPartial<U>>\n : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>\n : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }\n : Partial<T>;\n\nfunction toTimestamp(date: Date): Timestamp {\n const seconds = numberToLong(date.getTime() / 1_000);\n const nanos = (date.getTime() % 1_000) * 1_000_000;\n return { seconds, nanos };\n}\n\nfunction fromTimestamp(t: Timestamp): Date {\n let millis = t.seconds.toNumber() * 1_000;\n millis += t.nanos / 1_000_000;\n return new Date(millis);\n}\n\nfunction fromJsonTimestamp(o: any): Date {\n if (o instanceof Date) {\n return o;\n } else if (typeof o === \"string\") {\n return new Date(o);\n } else {\n return fromTimestamp(Timestamp.fromJSON(o));\n }\n}\n\nfunction numberToLong(number: number) {\n return Long.fromNumber(number);\n}\n\nif (_m0.util.Long !== Long) {\n _m0.util.Long = Long as any;\n _m0.configure();\n}\n\nfunction isSet(value: any): boolean {\n return value !== null && value !== undefined;\n}\n"]}
@@ -1,6 +1,6 @@
1
1
  module.exports = {
2
- // branches: ['release', { name: 'main', prerelease: 'rc' }],
3
- branches: ['main'],
2
+ branches: ['release', { name: 'main', prerelease: 'rc' }],
3
+ // branches: ['main'],
4
4
  plugins: [
5
5
  [
6
6
  '@semantic-release/commit-analyzer',
package/lib/service.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { CallContext } from 'nice-grpc';
2
- import { BlockBinding, DataBinding, ProcessBindingResponse, ProcessBindingsRequest, ProcessBlocksRequest, ProcessConfigRequest, ProcessConfigResponse, ProcessInstructionsRequest, ProcessorServiceImplementation, ProcessResult, ProcessTransactionsRequest, StartRequest } from './gen';
2
+ import { DataBinding, ProcessBindingResponse, ProcessBindingsRequest, ProcessConfigRequest, ProcessConfigResponse, ProcessorServiceImplementation, ProcessResult, StartRequest } from './gen';
3
3
  import { Empty } from './gen/google/protobuf/empty';
4
4
  export declare class ProcessorServiceImpl implements ProcessorServiceImplementation {
5
5
  private eventHandlers;
@@ -24,14 +24,14 @@ export declare class ProcessorServiceImpl implements ProcessorServiceImplementat
24
24
  stop(request: Empty, context: CallContext): Promise<Empty>;
25
25
  processBindings(request: ProcessBindingsRequest, options?: CallContext): Promise<ProcessBindingResponse>;
26
26
  processBinding(request: DataBinding, options?: CallContext): Promise<ProcessResult>;
27
+ processBindingsStream(requests: AsyncIterable<DataBinding>, context: CallContext): AsyncGenerator<{
28
+ result: ProcessResult;
29
+ configUpdated: boolean;
30
+ }, void, unknown>;
27
31
  processLogs(request: ProcessBindingsRequest, context: CallContext): Promise<ProcessBindingResponse>;
28
- processLog(l: DataBinding): Promise<ProcessResult>;
29
- processTransactions(request: ProcessTransactionsRequest, context: CallContext): Promise<ProcessBindingResponse>;
30
- processInstructions(request: ProcessInstructionsRequest, context: CallContext): Promise<ProcessBindingResponse>;
31
- processInstructionsNew(request: DataBinding): Promise<ProcessResult>;
32
- processBlocks(request: ProcessBlocksRequest, context: CallContext): Promise<ProcessBindingResponse>;
33
- processBlock(binding: BlockBinding): Promise<ProcessResult>;
34
- processBlockNew(binding: DataBinding): Promise<ProcessResult>;
32
+ processLog(request: DataBinding): Promise<ProcessResult>;
33
+ procecessSolInstructions(request: DataBinding): Promise<ProcessResult>;
34
+ processBlock(binding: DataBinding): Promise<ProcessResult>;
35
35
  processTraces(request: ProcessBindingsRequest, context: CallContext): Promise<ProcessBindingResponse>;
36
36
  processTrace(binding: DataBinding): Promise<ProcessResult>;
37
37
  processAptosEvent(binding: DataBinding): Promise<ProcessResult>;
package/lib/service.js CHANGED
@@ -108,7 +108,6 @@ class ProcessorServiceImpl {
108
108
  address: processor.config.address,
109
109
  abi: '',
110
110
  },
111
- blockConfigs: [],
112
111
  intervalConfigs: [],
113
112
  logConfigs: [],
114
113
  traceConfigs: [],
@@ -228,7 +227,6 @@ class ProcessorServiceImpl {
228
227
  address: solanaProcessor.address,
229
228
  abi: '',
230
229
  },
231
- blockConfigs: [],
232
230
  logConfigs: [],
233
231
  traceConfigs: [],
234
232
  intervalConfigs: [],
@@ -254,7 +252,6 @@ class ProcessorServiceImpl {
254
252
  address: suiProcessor.address,
255
253
  abi: '',
256
254
  },
257
- blockConfigs: [],
258
255
  logConfigs: [],
259
256
  intervalConfigs: [],
260
257
  traceConfigs: [],
@@ -276,7 +273,6 @@ class ProcessorServiceImpl {
276
273
  address: aptosProcessor.config.address,
277
274
  abi: '',
278
275
  },
279
- blockConfigs: [],
280
276
  intervalConfigs: [],
281
277
  logConfigs: [],
282
278
  traceConfigs: [],
@@ -403,9 +399,6 @@ class ProcessorServiceImpl {
403
399
  };
404
400
  }
405
401
  async processBinding(request, options) {
406
- if (request.handlerIds.length == 0) {
407
- request.handlerIds = [request.handlerId];
408
- }
409
402
  const processBindingInternal = (request) => {
410
403
  switch (request.handlerType) {
411
404
  case gen_1.HandlerType.APT_CALL:
@@ -419,10 +412,10 @@ class ProcessorServiceImpl {
419
412
  case gen_1.HandlerType.ETH_TRACE:
420
413
  return this.processTrace(request);
421
414
  case gen_1.HandlerType.ETH_BLOCK:
422
- return this.processBlockNew(request);
423
- case gen_1.HandlerType.SOL_INSTRUCTIONS:
424
- return this.processInstructionsNew(request);
425
- // TODO migrate SOLANA SUI cases
415
+ return this.processBlock(request);
416
+ case gen_1.HandlerType.SOL_INSTRUCTION:
417
+ return this.procecessSolInstructions(request);
418
+ // TODO migrate SUI cases
426
419
  // case HandlerType.INSTRUCTION:
427
420
  // return this.processInstruction(request)
428
421
  default:
@@ -433,6 +426,21 @@ class ProcessorServiceImpl {
433
426
  recordRuntimeInfo(result, request.handlerType);
434
427
  return result;
435
428
  }
429
+ async *processBindingsStream(requests, context) {
430
+ for await (const request of requests) {
431
+ const result = await this.processBinding(request);
432
+ let updated = false;
433
+ if (global.PROCESSOR_STATE.templatesInstances &&
434
+ this.templateInstances.length != global.PROCESSOR_STATE.templatesInstances.length) {
435
+ await this.configure();
436
+ updated = true;
437
+ }
438
+ yield {
439
+ result,
440
+ configUpdated: updated,
441
+ };
442
+ }
443
+ }
436
444
  async processLogs(request, context) {
437
445
  if (!this.started) {
438
446
  throw new nice_grpc_1.ServerError(nice_grpc_1.Status.UNAVAILABLE, 'Service Not started.');
@@ -454,17 +462,14 @@ class ProcessorServiceImpl {
454
462
  configUpdated: updated,
455
463
  };
456
464
  }
457
- async processLog(l) {
458
- if (!l.data) {
465
+ async processLog(request) {
466
+ if (!request.data) {
459
467
  throw new nice_grpc_1.ServerError(nice_grpc_1.Status.INVALID_ARGUMENT, "Log can't be null");
460
468
  }
461
- if (l.handlerIds.length == 0) {
462
- l.handlerIds = [l.handlerId];
463
- }
464
469
  const promises = [];
465
- const jsonString = Utf8ArrayToStr(l.data.raw);
470
+ const jsonString = Utf8ArrayToStr(request.data.ethLog?.data || request.data.raw);
466
471
  const log = JSON.parse(jsonString);
467
- for (const handlerId of l.handlerIds) {
472
+ for (const handlerId of request.handlerIds) {
468
473
  const handler = this.eventHandlers[handlerId];
469
474
  promises.push(handler(log).catch((e) => {
470
475
  throw new nice_grpc_1.ServerError(nice_grpc_1.Status.INTERNAL, 'error processing log: ' + jsonString + '\n' + errorString(e));
@@ -472,156 +477,41 @@ class ProcessorServiceImpl {
472
477
  }
473
478
  return mergeProcessResults(await Promise.all(promises));
474
479
  }
475
- async processTransactions(request, context) {
476
- if (!this.started) {
477
- throw new nice_grpc_1.ServerError(nice_grpc_1.Status.UNAVAILABLE, 'Service not started.');
478
- }
479
- const result = gen_1.ProcessResult.fromPartial({});
480
- if (request.chainId.toLowerCase().startsWith('sui') && sui_processor_1.SuiProcessorState.INSTANCE.getValues()) {
481
- const processorPromises = [];
482
- for (const txn of request.transactions) {
483
- processorPromises.push(new Promise((resolve, _) => {
484
- for (const processor of sui_processor_1.SuiProcessorState.INSTANCE.getValues()) {
485
- const res = processor.handleTransaction(JSON.parse(new util_1.TextDecoder().decode(txn.raw)), txn.slot ?? long_1.default.fromNumber(0));
486
- if (res) {
487
- res.gauges.forEach((g) => result.gauges.push(g));
488
- res.counters.forEach((c) => result.counters.push(c));
489
- res.logs.forEach((l) => result.logs.push(l));
490
- }
491
- }
492
- resolve();
493
- }));
494
- }
495
- await Promise.all(processorPromises);
496
- }
497
- recordRuntimeInfo(result, gen_1.HandlerType.SUI_TRANSACTION);
498
- return {
499
- result,
500
- configUpdated: false,
501
- };
502
- }
503
- async processInstructions(request, context) {
504
- if (!this.started) {
505
- throw new nice_grpc_1.ServerError(nice_grpc_1.Status.UNAVAILABLE, 'Service not started.');
506
- }
507
- const result = gen_1.ProcessResult.fromPartial({});
508
- // Only have instruction handlers for solana processors
509
- if (solana_processor_1.SolanaProcessorState.INSTANCE.getValues()) {
510
- const processorPromises = [];
511
- for (const instruction of request.instructions) {
512
- if (!instruction) {
513
- throw new nice_grpc_1.ServerError(nice_grpc_1.Status.INVALID_ARGUMENT, 'instruction cannot be null');
514
- }
515
- processorPromises.push(new Promise((resolve, _) => {
516
- for (const processor of solana_processor_1.SolanaProcessorState.INSTANCE.getValues()) {
517
- if (processor.address === instruction.programAccountId) {
518
- let parsedInstruction = null;
519
- if (instruction.parsed) {
520
- parsedInstruction = processor.getParsedInstruction(JSON.parse(new util_1.TextDecoder().decode(instruction.parsed)));
521
- }
522
- else if (instruction.instructionData) {
523
- parsedInstruction = processor.getParsedInstruction(instruction.instructionData);
524
- }
525
- if (parsedInstruction == null) {
526
- continue;
527
- }
528
- const insHandler = processor.getInstructionHandler(parsedInstruction);
529
- if (insHandler == null) {
530
- continue;
531
- }
532
- const res = processor.handleInstruction(parsedInstruction, instruction.accounts, insHandler, instruction.slot);
533
- res.gauges.forEach((g) => result.gauges.push(g));
534
- res.counters.forEach((c) => result.counters.push(c));
535
- res.logs.forEach((l) => result.logs.push(l));
536
- }
537
- }
538
- resolve();
539
- }));
540
- }
541
- await Promise.all(processorPromises);
542
- }
543
- recordRuntimeInfo(result, gen_1.HandlerType.SOL_INSTRUCTIONS);
544
- return {
545
- result,
546
- configUpdated: false,
547
- };
548
- }
549
- async processInstructionsNew(request) {
550
- if (!this.started) {
551
- throw new nice_grpc_1.ServerError(nice_grpc_1.Status.UNAVAILABLE, 'Service not started.');
552
- }
480
+ async procecessSolInstructions(request) {
553
481
  if (!request.data) {
554
482
  throw new nice_grpc_1.ServerError(nice_grpc_1.Status.INVALID_ARGUMENT, 'instruction data cannot be empty');
555
483
  }
556
- const jsonString = Utf8ArrayToStr(request.data.raw);
557
- const instructions = JSON.parse(jsonString);
484
+ const instruction = request.data.solInstruction || gen_1.Data_SolInstruction.decode(request.data.raw); // JSON.parse(jsonString)
558
485
  const promises = [];
559
486
  // Only have instruction handlers for solana processors
560
- if (solana_processor_1.SolanaProcessorState.INSTANCE.getValues()) {
561
- for (const instruction of instructions) {
562
- if (!instruction) {
563
- throw new nice_grpc_1.ServerError(nice_grpc_1.Status.INVALID_ARGUMENT, 'instruction cannot be null');
487
+ for (const processor of solana_processor_1.SolanaProcessorState.INSTANCE.getValues()) {
488
+ if (processor.address === instruction.programAccountId) {
489
+ let parsedInstruction = null;
490
+ if (instruction.parsed) {
491
+ const a1 = JSON.parse(new util_1.TextDecoder().decode(instruction.parsed));
492
+ parsedInstruction = processor.getParsedInstruction(a1);
564
493
  }
565
- for (const processor of solana_processor_1.SolanaProcessorState.INSTANCE.getValues()) {
566
- if (processor.address === instruction.programAccountId) {
567
- let parsedInstruction = null;
568
- if (instruction.parsed) {
569
- parsedInstruction = processor.getParsedInstruction(JSON.parse(new util_1.TextDecoder().decode(instruction.parsed)));
570
- }
571
- else if (instruction.instructionData) {
572
- parsedInstruction = processor.getParsedInstruction(instruction.instructionData);
573
- }
574
- if (parsedInstruction == null) {
575
- continue;
576
- }
577
- const insHandler = processor.getInstructionHandler(parsedInstruction);
578
- if (insHandler == null) {
579
- continue;
580
- }
581
- const res = await processor.handleInstruction(parsedInstruction, instruction.accounts, insHandler, instruction.slot);
582
- promises.push(Promise.resolve(res));
583
- }
494
+ else if (instruction.instructionData) {
495
+ parsedInstruction = processor.getParsedInstruction(instruction.instructionData);
496
+ }
497
+ if (parsedInstruction == null) {
498
+ continue;
499
+ }
500
+ const insHandler = processor.getInstructionHandler(parsedInstruction);
501
+ if (insHandler == null) {
502
+ continue;
584
503
  }
504
+ const res = await processor.handleInstruction(parsedInstruction, instruction.accounts, insHandler, instruction.slot);
505
+ promises.push(Promise.resolve(res));
585
506
  }
586
507
  }
587
508
  return mergeProcessResults(await Promise.all(promises));
588
509
  }
589
- async processBlocks(request, context) {
590
- if (!this.started) {
591
- throw new nice_grpc_1.ServerError(nice_grpc_1.Status.UNAVAILABLE, 'Service Not started.');
592
- }
593
- const promises = request.blockBindings.map((binding) => this.processBlock(binding));
594
- const result = mergeProcessResults(await Promise.all(promises));
595
- recordRuntimeInfo(result, gen_1.HandlerType.ETH_BLOCK);
596
- return {
597
- result,
598
- configUpdated: false,
599
- };
600
- }
601
510
  async processBlock(binding) {
602
- if (!binding.block) {
603
- throw new nice_grpc_1.ServerError(nice_grpc_1.Status.INVALID_ARGUMENT, "Block can't be empty");
604
- }
605
- const jsonString = Utf8ArrayToStr(binding.block.raw);
606
- const block = JSON.parse(jsonString);
607
- const promises = [];
608
- for (const handlerId of binding.handlerIds) {
609
- const promise = this.blockHandlers[handlerId](block).catch((e) => {
610
- throw new nice_grpc_1.ServerError(nice_grpc_1.Status.INTERNAL, 'error processing block: ' + block.number + '\n' + errorString(e));
611
- });
612
- promises.push(promise);
613
- }
614
- return mergeProcessResults(await Promise.all(promises));
615
- }
616
- // TODO remove above old processBlock logic
617
- async processBlockNew(binding) {
618
511
  if (!binding.data) {
619
512
  throw new nice_grpc_1.ServerError(nice_grpc_1.Status.INVALID_ARGUMENT, "Block can't be empty");
620
513
  }
621
- if (binding.handlerIds.length == 0) {
622
- binding.handlerIds = [binding.handlerId];
623
- }
624
- const jsonString = Utf8ArrayToStr(binding.data.raw);
514
+ const jsonString = Utf8ArrayToStr(binding.data.ethBlock?.data || binding.data.raw);
625
515
  const block = JSON.parse(jsonString);
626
516
  const promises = [];
627
517
  for (const handlerId of binding.handlerIds) {
@@ -647,10 +537,7 @@ class ProcessorServiceImpl {
647
537
  if (!binding.data) {
648
538
  throw new nice_grpc_1.ServerError(nice_grpc_1.Status.INVALID_ARGUMENT, "Trace can't be empty");
649
539
  }
650
- if (binding.handlerIds.length == 0) {
651
- binding.handlerIds = [binding.handlerId];
652
- }
653
- const jsonString = Utf8ArrayToStr(binding.data.raw);
540
+ const jsonString = Utf8ArrayToStr(binding.data.ethTrace?.data || binding.data.raw);
654
541
  const trace = JSON.parse(jsonString);
655
542
  const promises = [];
656
543
  for (const handlerId of binding.handlerIds) {
@@ -665,7 +552,7 @@ class ProcessorServiceImpl {
665
552
  throw new nice_grpc_1.ServerError(nice_grpc_1.Status.INVALID_ARGUMENT, "Event can't be empty");
666
553
  }
667
554
  const promises = [];
668
- const jsonString = Utf8ArrayToStr(binding.data.raw);
555
+ const jsonString = Utf8ArrayToStr(binding.data.aptEvent?.data || binding.data.raw);
669
556
  const event = JSON.parse(jsonString);
670
557
  for (const handlerId of binding.handlerIds) {
671
558
  // only support aptos event for now
@@ -679,7 +566,7 @@ class ProcessorServiceImpl {
679
566
  if (!binding.data) {
680
567
  throw new nice_grpc_1.ServerError(nice_grpc_1.Status.INVALID_ARGUMENT, "Event can't be empty");
681
568
  }
682
- const jsonString = Utf8ArrayToStr(binding.data.raw);
569
+ const jsonString = Utf8ArrayToStr(binding.data.aptResource?.data || binding.data.raw);
683
570
  const json = JSON.parse(jsonString);
684
571
  const promises = [];
685
572
  for (const handlerId of binding.handlerIds) {
@@ -693,7 +580,7 @@ class ProcessorServiceImpl {
693
580
  if (!binding.data) {
694
581
  throw new nice_grpc_1.ServerError(nice_grpc_1.Status.INVALID_ARGUMENT, "Event can't be empty");
695
582
  }
696
- const jsonString = Utf8ArrayToStr(binding.data.raw);
583
+ const jsonString = Utf8ArrayToStr(binding.data.aptCall?.data || binding.data.raw);
697
584
  const call = JSON.parse(jsonString);
698
585
  const promises = [];
699
586
  for (const handlerId of binding.handlerIds) {