@sentio/sdk 2.30.3-rc.1 → 2.31.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 +1 @@
1
- {"version":3,"file":"core-plugin.d.ts","sourceRoot":"","sources":["../../src/core/core-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAiB,MAAM,iBAAiB,CAAA;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AAOtD,qBAAa,UAAW,SAAQ,MAAM;IACpC,IAAI,EAAE,MAAM,CAAe;IAErB,SAAS,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;CA6B9D"}
1
+ {"version":3,"file":"core-plugin.d.ts","sourceRoot":"","sources":["../../src/core/core-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAiB,MAAM,iBAAiB,CAAA;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AAQtD,qBAAa,UAAW,SAAQ,MAAM;IACpC,IAAI,EAAE,MAAM,CAAe;IAErB,SAAS,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;CAmC9D"}
@@ -3,6 +3,7 @@ import { MetricState } from './meter.js';
3
3
  import { ExporterState } from './exporter.js';
4
4
  import { EventTrackerState } from './event-tracker.js';
5
5
  import { TemplateInstanceState } from './template.js';
6
+ import { EventLoggerState } from './event-logger.js';
6
7
  export class CorePlugin extends Plugin {
7
8
  name = 'CorePlugin';
8
9
  async configure(config) {
@@ -10,7 +11,12 @@ export class CorePlugin extends Plugin {
10
11
  config.templateInstances = [...TemplateInstanceState.INSTANCE.getValues()];
11
12
  for (const metric of MetricState.INSTANCE.getValues()) {
12
13
  config.metricConfigs.push({
13
- ...metric.config,
14
+ ...metric.config
15
+ });
16
+ }
17
+ for (const event of EventLoggerState.INSTANCE.getValues()) {
18
+ config.eventLogConfigs.push({
19
+ ...event.config
14
20
  });
15
21
  }
16
22
  // eslint-disable-next-line deprecation/deprecation
@@ -21,13 +27,13 @@ export class CorePlugin extends Plugin {
21
27
  retentionConfig: undefined,
22
28
  totalByDay: eventTracker.options.totalByDay || false,
23
29
  totalPerEntity: undefined,
24
- unique: eventTracker.options.unique || false,
30
+ unique: eventTracker.options.unique || false
25
31
  });
26
32
  }
27
33
  for (const exporter of ExporterState.INSTANCE.getValues()) {
28
34
  config.exportConfigs.push({
29
35
  name: exporter.name,
30
- channel: exporter.channel,
36
+ channel: exporter.channel
31
37
  });
32
38
  }
33
39
  }
@@ -1 +1 @@
1
- {"version":3,"file":"core-plugin.js","sourceRoot":"","sources":["../../src/core/core-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAGvD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAErD,MAAM,OAAO,UAAW,SAAQ,MAAM;IACpC,IAAI,GAAW,YAAY,CAAA;IAE3B,KAAK,CAAC,SAAS,CAAC,MAA6B;QAC3C,4DAA4D;QAC5D,MAAM,CAAC,iBAAiB,GAAG,CAAC,GAAG,qBAAqB,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAA;QAE1E,KAAK,MAAM,MAAM,IAAI,WAAW,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE;YACrD,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC;gBACxB,GAAG,MAAM,CAAC,MAAM;aACjB,CAAC,CAAA;SACH;QAED,mDAAmD;QACnD,KAAK,MAAM,YAAY,IAAI,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE;YACjE,MAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC;gBAC/B,yBAAyB,EAAE,YAAY,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE;gBACpE,SAAS,EAAE,YAAY,CAAC,IAAI;gBAC5B,eAAe,EAAE,SAAS;gBAC1B,UAAU,EAAE,YAAY,CAAC,OAAO,CAAC,UAAU,IAAI,KAAK;gBACpD,cAAc,EAAE,SAAS;gBACzB,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,MAAM,IAAI,KAAK;aAC7C,CAAC,CAAA;SACH;QAED,KAAK,MAAM,QAAQ,IAAI,aAAa,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE;YACzD,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC;gBACxB,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;aAC1B,CAAC,CAAA;SACH;IACH,CAAC;CACF;AAED,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,UAAU,EAAE,CAAC,CAAA"}
1
+ {"version":3,"file":"core-plugin.js","sourceRoot":"","sources":["../../src/core/core-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAGvD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAEpD,MAAM,OAAO,UAAW,SAAQ,MAAM;IACpC,IAAI,GAAW,YAAY,CAAA;IAE3B,KAAK,CAAC,SAAS,CAAC,MAA6B;QAC3C,4DAA4D;QAC5D,MAAM,CAAC,iBAAiB,GAAG,CAAC,GAAG,qBAAqB,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAA;QAE1E,KAAK,MAAM,MAAM,IAAI,WAAW,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE;YACrD,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC;gBACxB,GAAG,MAAM,CAAC,MAAM;aACjB,CAAC,CAAA;SACH;QAED,KAAK,MAAM,KAAK,IAAI,gBAAgB,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE;YACzD,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC;gBAC1B,GAAG,KAAK,CAAC,MAAM;aAChB,CAAC,CAAA;SACH;QAED,mDAAmD;QACnD,KAAK,MAAM,YAAY,IAAI,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE;YACjE,MAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC;gBAC/B,yBAAyB,EAAE,YAAY,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE;gBACpE,SAAS,EAAE,YAAY,CAAC,IAAI;gBAC5B,eAAe,EAAE,SAAS;gBAC1B,UAAU,EAAE,YAAY,CAAC,OAAO,CAAC,UAAU,IAAI,KAAK;gBACpD,cAAc,EAAE,SAAS;gBACzB,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,MAAM,IAAI,KAAK;aAC7C,CAAC,CAAA;SACH;QAED,KAAK,MAAM,QAAQ,IAAI,aAAa,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE;YACzD,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC;gBACxB,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;aAC1B,CAAC,CAAA;SACH;IACH,CAAC;CACF;AAED,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,UAAU,EAAE,CAAC,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import { BaseContext } from './base-context.js';
2
- import { LogLevel } from '@sentio/protos';
2
+ import { CoinID, EventLogConfig, EventLogConfig_BasicFieldType, EventLogConfig_Field, LogLevel } from '@sentio/protos';
3
3
  import { MapStateStorage } from '@sentio/runtime';
4
4
  export interface Attribute<T> {
5
5
  [key: string]: Exclude<T | number | bigint | string | boolean | LogLevel | Attribute<T> | undefined, Promise<any>>;
@@ -17,10 +17,21 @@ export declare class EventLoggerBinding {
17
17
  constructor(ctx: BaseContext);
18
18
  emit<T>(eventName: string, event: Event<T>): void;
19
19
  }
20
+ export type BasicFieldType = EventLogConfig_BasicFieldType;
21
+ export declare const BasicFieldType: typeof EventLogConfig_BasicFieldType;
22
+ export type FieldType = CoinID | BasicFieldType | Fields;
23
+ export type Fields = {
24
+ [key: string]: FieldType;
25
+ };
26
+ export interface EventLogOptions {
27
+ fields: Fields;
28
+ }
29
+ export declare function fieldsToProtos(fields: Fields): EventLogConfig_Field[];
20
30
  export declare class EventLogger {
21
31
  private readonly eventName;
32
+ config: EventLogConfig;
22
33
  private constructor();
23
- static register(eventName: string): EventLogger;
34
+ static register(eventName: string, options?: EventLogOptions): EventLogger;
24
35
  emit<T>(ctx: BaseContext, event: Event<T>): void;
25
36
  }
26
37
  //# sourceMappingURL=event-logger.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-logger.d.ts","sourceRoot":"","sources":["../../src/core/event-logger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAuB,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAE9D,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEjD,MAAM,WAAW,SAAS,CAAC,CAAC;IAC1B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAA;CACnH;AAED,MAAM,WAAW,KAAK,CAAC,CAAC,CAAE,SAAQ,SAAS,CAAC,CAAC,CAAC;IAI5C,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,qBAAa,gBAAiB,SAAQ,eAAe,CAAC,WAAW,CAAC;IAChE,MAAM,CAAC,QAAQ,mBAAyB;CACzC;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAa;gBAErB,GAAG,EAAE,WAAW;IAI5B,IAAI,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;CAG3C;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAQ;IAElC,OAAO;IAIP,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW;IAK/C,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;CAG1C"}
1
+ {"version":3,"file":"event-logger.d.ts","sourceRoot":"","sources":["../../src/core/event-logger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EACL,MAAM,EACN,cAAc,EACd,6BAA6B,EAC7B,oBAAoB,EAGpB,QAAQ,EACT,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEjD,MAAM,WAAW,SAAS,CAAC,CAAC;IAC1B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAA;CACnH;AAED,MAAM,WAAW,KAAK,CAAC,CAAC,CAAE,SAAQ,SAAS,CAAC,CAAC,CAAC;IAI5C,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,qBAAa,gBAAiB,SAAQ,eAAe,CAAC,WAAW,CAAC;IAChE,MAAM,CAAC,QAAQ,mBAAyB;CACzC;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAa;gBAErB,GAAG,EAAE,WAAW;IAI5B,IAAI,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;CAG3C;AAED,MAAM,MAAM,cAAc,GAAG,6BAA6B,CAAA;AAC1D,eAAO,MAAM,cAAc,sCAAgC,CAAA;AAE3D,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,cAAc,GAAG,MAAM,CAAA;AAExD,MAAM,MAAM,MAAM,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAA;AAEjD,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAA;CACf;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,oBAAoB,EAAE,CA0BrE;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAQ;IAClC,MAAM,EAAE,cAAc,CAAA;IAEtB,OAAO;IAKP,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,WAAW;IAa1E,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;CAG1C"}
@@ -1,4 +1,4 @@
1
- import { LogLevel } from '@sentio/protos';
1
+ import { EventLogConfig, EventLogConfig_BasicFieldType, EventLogConfig_StructFieldType, LogLevel } from '@sentio/protos';
2
2
  import { normalizeAttribute } from './normalization.js';
3
3
  import { MapStateStorage } from '@sentio/runtime';
4
4
  export class EventLoggerState extends MapStateStorage {
@@ -13,13 +13,50 @@ export class EventLoggerBinding {
13
13
  emit(this.ctx, eventName, event);
14
14
  }
15
15
  }
16
+ export const BasicFieldType = EventLogConfig_BasicFieldType;
17
+ export function fieldsToProtos(fields) {
18
+ const fieldsProto = [];
19
+ for (const [key, value] of Object.entries(fields)) {
20
+ let basicType;
21
+ let coinType;
22
+ let structType;
23
+ if (typeof value === 'number') {
24
+ basicType = value;
25
+ }
26
+ else {
27
+ if (value.address || value.symbol) {
28
+ coinType = value;
29
+ }
30
+ else {
31
+ structType = EventLogConfig_StructFieldType.create({
32
+ fields: fieldsToProtos(value)
33
+ });
34
+ }
35
+ }
36
+ fieldsProto.push({
37
+ name: key,
38
+ basicType,
39
+ coinType,
40
+ structType
41
+ });
42
+ }
43
+ return fieldsProto;
44
+ }
16
45
  export class EventLogger {
17
46
  eventName;
18
- constructor(eventName) {
47
+ config;
48
+ constructor(eventName, config) {
19
49
  this.eventName = eventName;
50
+ this.config = EventLogConfig.fromPartial(config || {});
20
51
  }
21
- static register(eventName) {
22
- const logger = new EventLogger(eventName);
52
+ static register(eventName, options) {
53
+ let config;
54
+ if (options?.fields) {
55
+ config = EventLogConfig.create({
56
+ fields: fieldsToProtos(options.fields)
57
+ });
58
+ }
59
+ const logger = new EventLogger(eventName, config);
23
60
  return EventLoggerState.INSTANCE.getOrSetValue(eventName, logger);
24
61
  }
25
62
  emit(ctx, event) {
@@ -35,7 +72,7 @@ function emit(ctx, eventName, event) {
35
72
  distinctEntityId: distinctId || '',
36
73
  attributes: normalizeAttribute(payload),
37
74
  runtimeInfo: undefined,
38
- noMetric: true,
75
+ noMetric: true
39
76
  };
40
77
  ctx.update({ events: [res] });
41
78
  }
@@ -1 +1 @@
1
- {"version":3,"file":"event-logger.js","sourceRoot":"","sources":["../../src/core/event-logger.ts"],"names":[],"mappings":"AACA,OAAO,EAAuB,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAejD,MAAM,OAAO,gBAAiB,SAAQ,eAA4B;IAChE,MAAM,CAAC,QAAQ,GAAG,IAAI,gBAAgB,EAAE,CAAA;;AAG1C,MAAM,OAAO,kBAAkB;IACZ,GAAG,CAAa;IAEjC,YAAY,GAAgB;QAC1B,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;IAChB,CAAC;IAED,IAAI,CAAI,SAAiB,EAAE,KAAe;QACxC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;IAClC,CAAC;CACF;AAED,MAAM,OAAO,WAAW;IACL,SAAS,CAAQ;IAElC,YAAoB,SAAiB;QACnC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,SAAiB;QAC/B,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,SAAS,CAAC,CAAA;QACzC,OAAO,gBAAgB,CAAC,QAAQ,CAAC,aAAa,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IACnE,CAAC;IAED,IAAI,CAAI,GAAgB,EAAE,KAAe;QACvC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;IAClC,CAAC;CACF;AAED,SAAS,IAAI,CAAI,GAAgB,EAAE,SAAiB,EAAE,KAAe;IACnE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,GAAG,KAAK,CAAA;IAE3D,MAAM,GAAG,GAAwB;QAC/B,QAAQ,EAAE,GAAG,CAAC,WAAW,CAAC,SAAS,EAAE,EAAE,CAAC;QACxC,QAAQ,EAAE,QAAQ,IAAI,QAAQ,CAAC,IAAI;QACnC,OAAO,EAAE,OAAO,IAAI,EAAE;QACtB,gBAAgB,EAAE,UAAU,IAAI,EAAE;QAClC,UAAU,EAAE,kBAAkB,CAAC,OAAO,CAAC;QACvC,WAAW,EAAE,SAAS;QACtB,QAAQ,EAAE,IAAI;KACf,CAAA;IACD,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;AAC/B,CAAC"}
1
+ {"version":3,"file":"event-logger.js","sourceRoot":"","sources":["../../src/core/event-logger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=event-logger.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-logger.test.d.ts","sourceRoot":"","sources":["../../src/core/event-logger.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-logger.test.js","sourceRoot":"","sources":["../../src/core/event-logger.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAU,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAE1E,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,IAAI,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE;QAC5B,MAAM,MAAM,GAAG;YACb,KAAK,EAAE,cAAc,CAAC,MAAM;YAC5B,MAAM,EAAE,cAAc,CAAC,MAAM;YAC7B,IAAI,EAAE,cAAc,CAAC,IAAI;SAC1B,CAAA;QAED,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,CAAC,CAAA;QAC1C,MAAM,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC;YAC1B;gBACE,IAAI,EAAE,OAAO;gBACb,SAAS,EAAE,cAAc,CAAC,MAAM;aACjC;YACD;gBACE,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,cAAc,CAAC,MAAM;aACjC;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,SAAS,EAAE,cAAc,CAAC,IAAI;aAC/B;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,cAAc,EAAE,KAAK,IAAI,EAAE;QAC9B,MAAM,MAAM,GAAG;YACb,KAAK,EAAE,cAAc,CAAC,MAAM;YAC5B,EAAE,EAAE;gBACF,GAAG,EAAE,cAAc,CAAC,IAAI;aACzB;SACF,CAAA;QAED,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,CAAC,CAAA;QAC1C,MAAM,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC;YAC1B;gBACE,IAAI,EAAE,OAAO;gBACb,SAAS,EAAE,cAAc,CAAC,MAAM;aACjC;YACD;gBACE,IAAI,EAAE,IAAI;gBACV,UAAU,EAAE;oBACV,MAAM,EAAE;wBACN;4BACE,IAAI,EAAE,KAAK;4BACX,SAAS,EAAE,cAAc,CAAC,IAAI;yBAC/B;qBACF;iBACF;aACF;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;QAC3B,MAAM,MAAM,GAAW;YACrB,IAAI,EAAE;gBACJ,MAAM,EAAE,MAAM;aACf;SACF,CAAA;QACD,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,CAAC,CAAA;QAC1C,MAAM,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC;YAC1B;gBACE,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE;oBACR,MAAM,EAAE,MAAM;iBACf;aACF;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,4 +1,5 @@
1
- import { CoinID, PriceServiceClient } from '@sentio/protos/price';
1
+ import { PriceServiceClient } from '@sentio/protos/price';
2
+ import { CoinID } from '@sentio/protos';
2
3
  import { RetryOptions } from 'nice-grpc-client-middleware-retry';
3
4
  import { ChainId } from '@sentio/chain';
4
5
  export declare function getPriceClient(address?: string): import("nice-grpc").RawClient<import("nice-grpc/lib/service-definitions/ts-proto.js").FromTsProtoServiceDefinition<{
@@ -1 +1 @@
1
- {"version":3,"file":"price.d.ts","sourceRoot":"","sources":["../../src/utils/price.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAA0B,MAAM,sBAAsB,CAAA;AAGzF,OAAO,EAAmB,YAAY,EAAE,MAAM,mCAAmC,CAAA;AAEjF,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAGvC,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAU9C;AASD,UAAU,YAAY;IACpB,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB;AAQD,wBAAsB,8BAA8B,CAClD,WAAW,EAAE,kBAAkB,CAAC,YAAY,CAAC,EAC7C,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA2D7B;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,IAAI,EACV,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAW7B;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,IAAI,EACV,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE7B"}
1
+ {"version":3,"file":"price.d.ts","sourceRoot":"","sources":["../../src/utils/price.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAA0B,MAAM,sBAAsB,CAAA;AACjF,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAGvC,OAAO,EAAmB,YAAY,EAAE,MAAM,mCAAmC,CAAA;AAEjF,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAGvC,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAU9C;AASD,UAAU,YAAY;IACpB,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB;AAQD,wBAAsB,8BAA8B,CAClD,WAAW,EAAE,kBAAkB,CAAC,YAAY,CAAC,EAC7C,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA2D7B;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,IAAI,EACV,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAW7B;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,IAAI,EACV,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"price.js","sourceRoot":"","sources":["../../src/utils/price.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"price.js","sourceRoot":"","sources":["../../src/utils/price.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sentio/sdk",
3
- "version": "2.30.3-rc.1",
3
+ "version": "2.31.0-rc.2",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "exports": {
@@ -73,8 +73,8 @@
73
73
  "typedoc": "^0.25.0",
74
74
  "utility-types": "^3.10.0",
75
75
  "yaml": "^2.2.1",
76
- "@sentio/protos": "2.30.3-rc.1",
77
- "@sentio/runtime": "^2.30.3-rc.1"
76
+ "@sentio/protos": "2.31.0-rc.2",
77
+ "@sentio/runtime": "^2.31.0-rc.2"
78
78
  },
79
79
  "peerDependencies": {
80
80
  "tsup": "npm:@sentio/tsup@^6.7.2"
@@ -5,6 +5,7 @@ import { MetricState } from './meter.js'
5
5
  import { ExporterState } from './exporter.js'
6
6
  import { EventTrackerState } from './event-tracker.js'
7
7
  import { TemplateInstanceState } from './template.js'
8
+ import { EventLoggerState } from './event-logger.js'
8
9
 
9
10
  export class CorePlugin extends Plugin {
10
11
  name: string = 'CorePlugin'
@@ -15,7 +16,13 @@ export class CorePlugin extends Plugin {
15
16
 
16
17
  for (const metric of MetricState.INSTANCE.getValues()) {
17
18
  config.metricConfigs.push({
18
- ...metric.config,
19
+ ...metric.config
20
+ })
21
+ }
22
+
23
+ for (const event of EventLoggerState.INSTANCE.getValues()) {
24
+ config.eventLogConfigs.push({
25
+ ...event.config
19
26
  })
20
27
  }
21
28
 
@@ -27,14 +34,14 @@ export class CorePlugin extends Plugin {
27
34
  retentionConfig: undefined,
28
35
  totalByDay: eventTracker.options.totalByDay || false,
29
36
  totalPerEntity: undefined,
30
- unique: eventTracker.options.unique || false,
37
+ unique: eventTracker.options.unique || false
31
38
  })
32
39
  }
33
40
 
34
41
  for (const exporter of ExporterState.INSTANCE.getValues()) {
35
42
  config.exportConfigs.push({
36
43
  name: exporter.name,
37
- channel: exporter.channel,
44
+ channel: exporter.channel
38
45
  })
39
46
  }
40
47
  }
@@ -1,5 +1,13 @@
1
1
  import { BaseContext } from './base-context.js'
2
- import { EventTrackingResult, LogLevel } from '@sentio/protos'
2
+ import {
3
+ CoinID,
4
+ EventLogConfig,
5
+ EventLogConfig_BasicFieldType,
6
+ EventLogConfig_Field,
7
+ EventLogConfig_StructFieldType,
8
+ EventTrackingResult,
9
+ LogLevel
10
+ } from '@sentio/protos'
3
11
  import { normalizeAttribute } from './normalization.js'
4
12
  import { MapStateStorage } from '@sentio/runtime'
5
13
 
@@ -32,15 +40,64 @@ export class EventLoggerBinding {
32
40
  }
33
41
  }
34
42
 
43
+ export type BasicFieldType = EventLogConfig_BasicFieldType
44
+ export const BasicFieldType = EventLogConfig_BasicFieldType
45
+
46
+ export type FieldType = CoinID | BasicFieldType | Fields
47
+
48
+ export type Fields = { [key: string]: FieldType }
49
+
50
+ export interface EventLogOptions {
51
+ fields: Fields
52
+ }
53
+
54
+ export function fieldsToProtos(fields: Fields): EventLogConfig_Field[] {
55
+ const fieldsProto: EventLogConfig_Field[] = []
56
+ for (const [key, value] of Object.entries(fields)) {
57
+ let basicType: BasicFieldType | undefined
58
+ let coinType: CoinID | undefined
59
+ let structType: EventLogConfig_StructFieldType | undefined
60
+
61
+ if (typeof value === 'number') {
62
+ basicType = value
63
+ } else {
64
+ if (value.address || value.symbol) {
65
+ coinType = value
66
+ } else {
67
+ structType = EventLogConfig_StructFieldType.create({
68
+ fields: fieldsToProtos(value as Fields)
69
+ })
70
+ }
71
+ }
72
+ fieldsProto.push({
73
+ name: key,
74
+ basicType,
75
+ coinType,
76
+ structType
77
+ })
78
+ }
79
+ return fieldsProto
80
+ }
81
+
35
82
  export class EventLogger {
36
83
  private readonly eventName: string
84
+ config: EventLogConfig
37
85
 
38
- private constructor(eventName: string) {
86
+ private constructor(eventName: string, config?: EventLogConfig) {
39
87
  this.eventName = eventName
88
+ this.config = EventLogConfig.fromPartial(config || {})
40
89
  }
41
90
 
42
- static register(eventName: string): EventLogger {
43
- const logger = new EventLogger(eventName)
91
+ static register(eventName: string, options?: EventLogOptions): EventLogger {
92
+ let config: EventLogConfig | undefined
93
+
94
+ if (options?.fields) {
95
+ config = EventLogConfig.create({
96
+ fields: fieldsToProtos(options.fields)
97
+ })
98
+ }
99
+
100
+ const logger = new EventLogger(eventName, config)
44
101
  return EventLoggerState.INSTANCE.getOrSetValue(eventName, logger)
45
102
  }
46
103
 
@@ -59,7 +116,7 @@ function emit<T>(ctx: BaseContext, eventName: string, event: Event<T>) {
59
116
  distinctEntityId: distinctId || '',
60
117
  attributes: normalizeAttribute(payload),
61
118
  runtimeInfo: undefined,
62
- noMetric: true,
119
+ noMetric: true
63
120
  }
64
121
  ctx.update({ events: [res] })
65
122
  }
@@ -1,4 +1,5 @@
1
- import { CoinID, PriceServiceClient, PriceServiceDefinition } from '@sentio/protos/price'
1
+ import { PriceServiceClient, PriceServiceDefinition } from '@sentio/protos/price'
2
+ import { CoinID } from '@sentio/protos'
2
3
  import { createChannel, createClientFactory, Status } from 'nice-grpc'
3
4
  import { prometheusClientMiddleware } from 'nice-grpc-prometheus'
4
5
  import { retryMiddleware, RetryOptions } from 'nice-grpc-client-middleware-retry'