@sentio/sdk 1.29.1 → 1.30.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/aptos/context.d.ts +3 -3
- package/lib/aptos/context.js +7 -6
- package/lib/aptos/context.js.map +1 -1
- package/lib/cli/webpack.config.js +3 -2
- package/lib/core/base-context.d.ts +2 -2
- package/lib/core/base-context.js.map +1 -1
- package/lib/core/context.d.ts +4 -4
- package/lib/core/context.js +14 -13
- package/lib/core/context.js.map +1 -1
- package/lib/core/event-tracker.d.ts +2 -2
- package/lib/core/event-tracker.js +4 -5
- package/lib/core/event-tracker.js.map +1 -1
- package/lib/core/exporter.d.ts +2 -2
- package/lib/core/exporter.js +4 -5
- package/lib/core/exporter.js.map +1 -1
- package/lib/core/index.d.ts +1 -1
- package/lib/core/index.js +2 -2
- package/lib/core/index.js.map +1 -1
- package/lib/core/logger.d.ts +2 -2
- package/lib/core/logger.js +3 -4
- package/lib/core/logger.js.map +1 -1
- package/lib/core/metadata.d.ts +3 -6
- package/lib/core/metadata.js +6 -16
- package/lib/core/metadata.js.map +1 -1
- package/lib/core/meter.d.ts +14 -7
- package/lib/core/meter.js +16 -25
- package/lib/core/meter.js.map +1 -1
- package/lib/gen/chainquery/protos/chainquery.d.ts +48 -1
- package/lib/gen/chainquery/protos/chainquery.js +16 -0
- package/lib/gen/chainquery/protos/chainquery.js.map +1 -1
- package/lib/gen/processor/protos/processor.d.ts +20 -0
- package/lib/gen/processor/protos/processor.js +138 -2
- package/lib/gen/processor/protos/processor.js.map +1 -1
- package/lib/service.js +1 -1
- package/lib/service.js.map +1 -1
- package/lib/testing/metric-utils.d.ts +1 -2
- package/lib/testing/metric-utils.js +2 -2
- package/lib/testing/metric-utils.js.map +1 -1
- package/lib/utils/price.d.ts +45 -3
- package/lib/utils/price.js +47 -27
- package/lib/utils/price.js.map +1 -1
- package/package.json +3 -1
- package/src/aptos/context.ts +6 -6
- package/src/cli/webpack.config.js +3 -2
- package/src/core/base-context.ts +2 -2
- package/src/core/context.ts +13 -13
- package/src/core/event-tracker.ts +4 -4
- package/src/core/exporter.ts +5 -5
- package/src/core/index.ts +1 -1
- package/src/core/logger.ts +4 -5
- package/src/core/metadata.ts +4 -15
- package/src/core/meter.ts +19 -28
- package/src/gen/chainquery/protos/chainquery.ts +37 -1
- package/src/gen/processor/protos/processor.ts +156 -0
- package/src/service.ts +1 -2
- package/src/testing/metric-utils.ts +3 -4
- package/src/utils/price.ts +54 -25
- package/templates/evm/src/processor.ts +1 -1
package/lib/aptos/context.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { RecordMetaData } from '../gen';
|
|
2
2
|
import { Labels } from '../core/metadata';
|
|
3
3
|
import { BaseContext } from '../core/base-context';
|
|
4
4
|
import { Transaction_UserTransaction } from 'aptos-sdk/src/generated';
|
|
@@ -10,7 +10,7 @@ export declare class AptosContext extends BaseContext {
|
|
|
10
10
|
version: bigint;
|
|
11
11
|
transaction: Transaction_UserTransaction;
|
|
12
12
|
constructor(moduleName: string, network: AptosNetwork, address: string, version: bigint, transaction?: Transaction_UserTransaction);
|
|
13
|
-
getMetaData(
|
|
13
|
+
getMetaData(name: string, labels: Labels): RecordMetaData;
|
|
14
14
|
}
|
|
15
15
|
export declare class AptosResourceContext extends BaseContext {
|
|
16
16
|
address: string;
|
|
@@ -18,5 +18,5 @@ export declare class AptosResourceContext extends BaseContext {
|
|
|
18
18
|
version: bigint;
|
|
19
19
|
timestampInMicros: number;
|
|
20
20
|
constructor(network: AptosNetwork, address: string, version: bigint, timestampInMicros: number);
|
|
21
|
-
getMetaData(
|
|
21
|
+
getMetaData(name: string, labels: Labels): RecordMetaData;
|
|
22
22
|
}
|
package/lib/aptos/context.js
CHANGED
|
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.AptosResourceContext = exports.AptosContext = void 0;
|
|
7
7
|
const long_1 = __importDefault(require("long"));
|
|
8
|
+
const gen_1 = require("../gen");
|
|
8
9
|
const meter_1 = require("../core/meter");
|
|
9
10
|
const base_context_1 = require("../core/base-context");
|
|
10
11
|
const network_1 = require("./network");
|
|
@@ -24,7 +25,7 @@ class AptosContext extends base_context_1.BaseContext {
|
|
|
24
25
|
this.transaction = transaction;
|
|
25
26
|
}
|
|
26
27
|
}
|
|
27
|
-
getMetaData(
|
|
28
|
+
getMetaData(name, labels) {
|
|
28
29
|
return {
|
|
29
30
|
address: this.address,
|
|
30
31
|
contractName: this.moduleName,
|
|
@@ -33,8 +34,8 @@ class AptosContext extends base_context_1.BaseContext {
|
|
|
33
34
|
transactionHash: this.transaction?.hash || '',
|
|
34
35
|
logIndex: 0,
|
|
35
36
|
chainId: (0, network_1.getChainId)(this.network),
|
|
36
|
-
dataDescriptor:
|
|
37
|
-
name:
|
|
37
|
+
dataDescriptor: gen_1.DataDescriptor.fromPartial({ name }),
|
|
38
|
+
name: name,
|
|
38
39
|
labels: (0, meter_1.normalizeLabels)(labels),
|
|
39
40
|
};
|
|
40
41
|
}
|
|
@@ -52,7 +53,7 @@ class AptosResourceContext extends base_context_1.BaseContext {
|
|
|
52
53
|
this.version = version;
|
|
53
54
|
this.timestampInMicros = timestampInMicros;
|
|
54
55
|
}
|
|
55
|
-
getMetaData(
|
|
56
|
+
getMetaData(name, labels) {
|
|
56
57
|
return {
|
|
57
58
|
address: this.address,
|
|
58
59
|
contractName: 'resources',
|
|
@@ -61,8 +62,8 @@ class AptosResourceContext extends base_context_1.BaseContext {
|
|
|
61
62
|
transactionHash: '',
|
|
62
63
|
logIndex: 0,
|
|
63
64
|
chainId: (0, network_1.getChainId)(this.network),
|
|
64
|
-
dataDescriptor:
|
|
65
|
-
name:
|
|
65
|
+
dataDescriptor: gen_1.DataDescriptor.fromPartial({ name }),
|
|
66
|
+
name: name,
|
|
66
67
|
labels: (0, meter_1.normalizeLabels)(labels),
|
|
67
68
|
};
|
|
68
69
|
}
|
package/lib/aptos/context.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/aptos/context.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAuB;
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/aptos/context.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAuB;AACvB,gCAAuD;AAEvD,yCAA+C;AAC/C,uDAAkD;AAElD,uCAAoD;AAEpD,MAAa,YAAa,SAAQ,0BAAW;IAC3C,OAAO,CAAQ;IACf,OAAO,CAAc;IACrB,UAAU,CAAQ;IAClB,OAAO,CAAQ;IACf,WAAW,CAA6B;IAExC,YACE,UAAkB,EAClB,OAAqB,EACrB,OAAe,EACf,OAAe,EACf,WAAyC;QAEzC,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,WAAW,EAAE;YACf,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;SAC/B;IACH,CAAC;IAED,WAAW,CAAC,IAAY,EAAE,MAAc;QACtC,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,YAAY,EAAE,IAAI,CAAC,UAAU;YAC7B,WAAW,EAAE,cAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrD,gBAAgB,EAAE,CAAC;YACnB,eAAe,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,EAAE;YAC7C,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,IAAA,oBAAU,EAAC,IAAI,CAAC,OAAO,CAAC;YACjC,cAAc,EAAE,oBAAc,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC;YACpD,IAAI,EAAE,IAAI;YACV,MAAM,EAAE,IAAA,uBAAe,EAAC,MAAM,CAAC;SAChC,CAAA;IACH,CAAC;CACF;AAtCD,oCAsCC;AAED,MAAa,oBAAqB,SAAQ,0BAAW;IACnD,OAAO,CAAQ;IACf,OAAO,CAAc;IACrB,OAAO,CAAQ;IACf,iBAAiB,CAAQ;IAEzB,YAAY,OAAqB,EAAE,OAAe,EAAE,OAAe,EAAE,iBAAyB;QAC5F,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAA;IAC5C,CAAC;IAED,WAAW,CAAC,IAAY,EAAE,MAAc;QACtC,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,YAAY,EAAE,WAAW;YACzB,WAAW,EAAE,cAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrD,gBAAgB,EAAE,CAAC;YACnB,eAAe,EAAE,EAAE;YACnB,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,IAAA,oBAAU,EAAC,IAAI,CAAC,OAAO,CAAC;YACjC,cAAc,EAAE,oBAAc,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC;YACpD,IAAI,EAAE,IAAI;YACV,MAAM,EAAE,IAAA,uBAAe,EAAC,MAAM,CAAC;SAChC,CAAA;IACH,CAAC;CACF;AA5BD,oDA4BC","sourcesContent":["import Long from 'long'\nimport { DataDescriptor, RecordMetaData } from '../gen'\nimport { Labels } from '../core/metadata'\nimport { normalizeLabels } from '../core/meter'\nimport { BaseContext } from '../core/base-context'\nimport { Transaction_UserTransaction } from 'aptos-sdk/src/generated'\nimport { AptosNetwork, getChainId } from './network'\n\nexport class AptosContext extends BaseContext {\n address: string\n network: AptosNetwork\n moduleName: string\n version: bigint\n transaction: Transaction_UserTransaction\n\n constructor(\n moduleName: string,\n network: AptosNetwork,\n address: string,\n version: bigint,\n transaction?: Transaction_UserTransaction\n ) {\n super()\n this.address = address\n this.network = network\n this.moduleName = moduleName\n this.version = version\n if (transaction) {\n this.transaction = transaction\n }\n }\n\n getMetaData(name: string, labels: Labels): RecordMetaData {\n return {\n address: this.address,\n contractName: this.moduleName,\n blockNumber: Long.fromString(this.version.toString()),\n transactionIndex: 0,\n transactionHash: this.transaction?.hash || '', // TODO\n logIndex: 0,\n chainId: getChainId(this.network),\n dataDescriptor: DataDescriptor.fromPartial({ name }),\n name: name,\n labels: normalizeLabels(labels),\n }\n }\n}\n\nexport class AptosResourceContext extends BaseContext {\n address: string\n network: AptosNetwork\n version: bigint\n timestampInMicros: number\n\n constructor(network: AptosNetwork, address: string, version: bigint, timestampInMicros: number) {\n super()\n this.address = address\n this.network = network\n this.version = version\n this.timestampInMicros = timestampInMicros\n }\n\n getMetaData(name: string, labels: Labels): RecordMetaData {\n return {\n address: this.address,\n contractName: 'resources',\n blockNumber: Long.fromString(this.version.toString()),\n transactionIndex: 0,\n transactionHash: '',\n logIndex: 0,\n chainId: getChainId(this.network),\n dataDescriptor: DataDescriptor.fromPartial({ name }),\n name: name,\n labels: normalizeLabels(labels),\n }\n }\n}\n"]}
|
|
@@ -26,15 +26,16 @@ module.exports = {
|
|
|
26
26
|
mode: 'production',
|
|
27
27
|
externals: [
|
|
28
28
|
{
|
|
29
|
+
protobufjs: 'commonjs2 protobufjs',
|
|
29
30
|
aptos: 'commonjs2 aptos-sdk',
|
|
30
31
|
ethers: 'commonjs2 ethers',
|
|
31
32
|
bs58: 'commonjs2 bs58',
|
|
32
33
|
"bignumber.js": 'commonjs2 bignumber.js',
|
|
33
34
|
'bn.js': 'commonjs2 bn.js',
|
|
34
|
-
'csv-parse': 'commonjs2 csv-parse'
|
|
35
|
+
'csv-parse': 'commonjs2 csv-parse',
|
|
35
36
|
},
|
|
36
37
|
function ({ context, request }, callback) {
|
|
37
|
-
if (/^@(ethersproject|solana|project-serum).*$/.test(request)) {
|
|
38
|
+
if (/^@(ethersproject|solana|project-serum|nice-grpc).*$/.test(request)) {
|
|
38
39
|
return callback(null, 'commonjs ' + request)
|
|
39
40
|
}
|
|
40
41
|
if (request.startsWith("@sentio/sdk")) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ProcessResult, RecordMetaData } from '../gen';
|
|
2
2
|
import { Logger } from './logger';
|
|
3
3
|
import { Labels } from './metadata';
|
|
4
4
|
import { Meter } from './meter';
|
|
@@ -8,5 +8,5 @@ export declare abstract class BaseContext {
|
|
|
8
8
|
res: ProcessResult;
|
|
9
9
|
protected constructor();
|
|
10
10
|
getProcessResult(): ProcessResult;
|
|
11
|
-
abstract getMetaData(
|
|
11
|
+
abstract getMetaData(name: string, labels: Labels): RecordMetaData;
|
|
12
12
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-context.js","sourceRoot":"","sources":["../../src/core/base-context.ts"],"names":[],"mappings":";;;AACA,qCAAiC;AAEjC,mCAA+B;AAE/B,MAAsB,WAAW;IAC/B,KAAK,CAAO;IACZ,MAAM,CAAQ;IAEd,GAAG,GAAkB;QACnB,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,EAAE;QACX,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,EAAE;KACT,CAAA;IAED;QACE,IAAI,CAAC,KAAK,GAAG,IAAI,aAAK,CAAC,IAAI,CAAC,CAAA;QAC5B,IAAI,CAAC,MAAM,GAAG,IAAI,eAAM,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,GAAG,CAAA;IACjB,CAAC;CAGF;AAtBD,kCAsBC","sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"base-context.js","sourceRoot":"","sources":["../../src/core/base-context.ts"],"names":[],"mappings":";;;AACA,qCAAiC;AAEjC,mCAA+B;AAE/B,MAAsB,WAAW;IAC/B,KAAK,CAAO;IACZ,MAAM,CAAQ;IAEd,GAAG,GAAkB;QACnB,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,EAAE;QACX,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,EAAE;KACT,CAAA;IAED;QACE,IAAI,CAAC,KAAK,GAAG,IAAI,aAAK,CAAC,IAAI,CAAC,CAAA;QAC5B,IAAI,CAAC,MAAM,GAAG,IAAI,eAAM,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,GAAG,CAAA;IACjB,CAAC;CAGF;AAtBD,kCAsBC","sourcesContent":["import { ProcessResult, RecordMetaData } from '../gen'\nimport { Logger } from './logger'\nimport { Labels } from './metadata'\nimport { Meter } from './meter'\n\nexport abstract class BaseContext {\n meter: Meter\n logger: Logger\n\n res: ProcessResult = {\n counters: [],\n events: [],\n exports: [],\n gauges: [],\n logs: [],\n }\n\n protected constructor() {\n this.meter = new Meter(this)\n this.logger = new Logger(this)\n }\n\n getProcessResult(): ProcessResult {\n return this.res\n }\n\n abstract getMetaData(name: string, labels: Labels): RecordMetaData\n}\n"]}
|
package/lib/core/context.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { RecordMetaData } from '../gen';
|
|
2
2
|
import { BaseContract, EventFilter } from 'ethers';
|
|
3
3
|
import { Block, Log } from '@ethersproject/abstract-provider';
|
|
4
4
|
import Long from 'long';
|
|
@@ -19,7 +19,7 @@ export declare class ContractContext<TContract extends BaseContract, TContractBo
|
|
|
19
19
|
contract: TContractBoundView;
|
|
20
20
|
contractName: string;
|
|
21
21
|
constructor(contractName: string, view: TContractBoundView, chainId: number, block?: Block, log?: Log, trace?: Trace);
|
|
22
|
-
getMetaData(
|
|
22
|
+
getMetaData(name: string, labels: Labels): RecordMetaData;
|
|
23
23
|
}
|
|
24
24
|
export declare class ContractView<TContract extends BaseContract> {
|
|
25
25
|
filters: {
|
|
@@ -45,12 +45,12 @@ export declare class SolanaContext extends BaseContext {
|
|
|
45
45
|
programName: string;
|
|
46
46
|
blockNumber: Long;
|
|
47
47
|
constructor(programName: string, address: string, slot: Long);
|
|
48
|
-
getMetaData(
|
|
48
|
+
getMetaData(name: string, labels: Labels): RecordMetaData;
|
|
49
49
|
}
|
|
50
50
|
export declare class SuiContext extends BaseContext {
|
|
51
51
|
address: string;
|
|
52
52
|
moduleName: string;
|
|
53
53
|
blockNumber: Long;
|
|
54
54
|
constructor(address: string, slot: Long);
|
|
55
|
-
getMetaData(
|
|
55
|
+
getMetaData(name: string, labels: Labels): RecordMetaData;
|
|
56
56
|
}
|
package/lib/core/context.js
CHANGED
|
@@ -4,6 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.SuiContext = exports.SolanaContext = exports.BoundContractView = exports.ContractView = exports.ContractContext = exports.EthContext = void 0;
|
|
7
|
+
const gen_1 = require("../gen");
|
|
7
8
|
const meter_1 = require("./meter");
|
|
8
9
|
const long_1 = __importDefault(require("long"));
|
|
9
10
|
const chain_1 = require("../utils/chain");
|
|
@@ -46,7 +47,7 @@ class ContractContext extends EthContext {
|
|
|
46
47
|
this.contractName = contractName;
|
|
47
48
|
this.contract = view;
|
|
48
49
|
}
|
|
49
|
-
getMetaData(
|
|
50
|
+
getMetaData(name, labels) {
|
|
50
51
|
if (this.log) {
|
|
51
52
|
return {
|
|
52
53
|
address: this.contract.rawContract.address,
|
|
@@ -56,8 +57,8 @@ class ContractContext extends EthContext {
|
|
|
56
57
|
transactionHash: this.transactionHash || '',
|
|
57
58
|
logIndex: this.log.logIndex,
|
|
58
59
|
chainId: this.chainId.toString(),
|
|
59
|
-
dataDescriptor:
|
|
60
|
-
name:
|
|
60
|
+
dataDescriptor: gen_1.DataDescriptor.fromPartial({ name }),
|
|
61
|
+
name: name,
|
|
61
62
|
labels: (0, meter_1.normalizeLabels)(labels),
|
|
62
63
|
};
|
|
63
64
|
}
|
|
@@ -70,8 +71,8 @@ class ContractContext extends EthContext {
|
|
|
70
71
|
transactionHash: '',
|
|
71
72
|
logIndex: -1,
|
|
72
73
|
chainId: this.chainId.toString(),
|
|
73
|
-
dataDescriptor:
|
|
74
|
-
name:
|
|
74
|
+
dataDescriptor: gen_1.DataDescriptor.fromPartial({ name }),
|
|
75
|
+
name: name,
|
|
75
76
|
labels: (0, meter_1.normalizeLabels)(labels),
|
|
76
77
|
};
|
|
77
78
|
}
|
|
@@ -84,8 +85,8 @@ class ContractContext extends EthContext {
|
|
|
84
85
|
transactionHash: this.transactionHash || '',
|
|
85
86
|
logIndex: -1,
|
|
86
87
|
chainId: this.chainId.toString(),
|
|
87
|
-
dataDescriptor:
|
|
88
|
-
name:
|
|
88
|
+
dataDescriptor: gen_1.DataDescriptor.fromPartial({ name }),
|
|
89
|
+
name: name,
|
|
89
90
|
labels: (0, meter_1.normalizeLabels)(labels),
|
|
90
91
|
};
|
|
91
92
|
}
|
|
@@ -136,7 +137,7 @@ class SolanaContext extends base_context_1.BaseContext {
|
|
|
136
137
|
this.address = address;
|
|
137
138
|
this.blockNumber = slot;
|
|
138
139
|
}
|
|
139
|
-
getMetaData(
|
|
140
|
+
getMetaData(name, labels) {
|
|
140
141
|
return {
|
|
141
142
|
address: this.address,
|
|
142
143
|
contractName: this.programName,
|
|
@@ -145,8 +146,8 @@ class SolanaContext extends base_context_1.BaseContext {
|
|
|
145
146
|
transactionHash: '',
|
|
146
147
|
logIndex: 0,
|
|
147
148
|
chainId: chain_1.SOL_MAINMET_ID,
|
|
148
|
-
dataDescriptor:
|
|
149
|
-
name:
|
|
149
|
+
dataDescriptor: gen_1.DataDescriptor.fromPartial({ name }),
|
|
150
|
+
name: name,
|
|
150
151
|
labels: (0, meter_1.normalizeLabels)(labels),
|
|
151
152
|
};
|
|
152
153
|
}
|
|
@@ -161,7 +162,7 @@ class SuiContext extends base_context_1.BaseContext {
|
|
|
161
162
|
this.address = address;
|
|
162
163
|
this.blockNumber = slot;
|
|
163
164
|
}
|
|
164
|
-
getMetaData(
|
|
165
|
+
getMetaData(name, labels) {
|
|
165
166
|
return {
|
|
166
167
|
address: this.address,
|
|
167
168
|
contractName: this.moduleName,
|
|
@@ -170,8 +171,8 @@ class SuiContext extends base_context_1.BaseContext {
|
|
|
170
171
|
transactionHash: '',
|
|
171
172
|
logIndex: 0,
|
|
172
173
|
chainId: chain_1.SUI_DEVNET_ID,
|
|
173
|
-
dataDescriptor:
|
|
174
|
-
name:
|
|
174
|
+
dataDescriptor: gen_1.DataDescriptor.fromPartial({ name }),
|
|
175
|
+
name: name,
|
|
175
176
|
labels: (0, meter_1.normalizeLabels)(labels),
|
|
176
177
|
};
|
|
177
178
|
}
|
package/lib/core/context.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/core/context.ts"],"names":[],"mappings":";;;;;;AAGA,mCAAyC;AACzC,gDAAuB;AAGvB,0CAA8D;AAC9D,iDAA4C;AAE5C,MAAsB,UAAW,SAAQ,0BAAW;IAClD,OAAO,CAAQ;IACf,OAAO,CAAQ;IACf,GAAG,CAAM;IACT,KAAK,CAAQ;IACb,KAAK,CAAQ;IACb,WAAW,CAAM;IACjB,eAAe,CAAS;IAExB,YAAsB,OAAe,EAAE,OAAe,EAAE,KAAa,EAAE,GAAS,EAAE,KAAa;QAC7F,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,GAAG,EAAE;YACP,IAAI,CAAC,WAAW,GAAG,cAAI,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,CAAA;YACzD,IAAI,CAAC,eAAe,GAAG,GAAG,CAAC,eAAe,CAAA;SAC3C;aAAM,IAAI,KAAK,EAAE;YAChB,IAAI,CAAC,WAAW,GAAG,cAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;SACvD;aAAM,IAAI,KAAK,EAAE;YAChB,IAAI,CAAC,WAAW,GAAG,cAAI,CAAC,UAAU,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,CAAA;YAC3D,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,eAAe,CAAA;SAC7C;IACH,CAAC;CACF;AA1BD,gCA0BC;AAED,MAAa,eAGX,SAAQ,UAAU;IAClB,QAAQ,CAAoB;IAC5B,YAAY,CAAQ;IAEpB,YACE,YAAoB,EACpB,IAAwB,EACxB,OAAe,EACf,KAAa,EACb,GAAS,EACT,KAAa;QAEb,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;QAC3D,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;QACnB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;QAChC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;IACtB,CAAC;IAED,WAAW,CAAC,UAA0B,EAAE,MAAc;QACpD,IAAI,IAAI,CAAC,GAAG,EAAE;YACZ,OAAO;gBACL,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO;gBAC1C,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,gBAAgB,EAAE,IAAI,CAAC,GAAG,CAAC,gBAAgB;gBAC3C,eAAe,EAAE,IAAI,CAAC,eAAe,IAAI,EAAE;gBAC3C,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ;gBAC3B,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE;gBAChC,cAAc,EAAE,UAAU;gBAC1B,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,MAAM,EAAE,IAAA,uBAAe,EAAC,MAAM,CAAC;aAChC,CAAA;SACF;QACD,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,OAAO;gBACL,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO;gBAC1C,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,gBAAgB,EAAE,CAAC,CAAC;gBACpB,eAAe,EAAE,EAAE;gBACnB,QAAQ,EAAE,CAAC,CAAC;gBACZ,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE;gBAChC,cAAc,EAAE,UAAU;gBAC1B,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,MAAM,EAAE,IAAA,uBAAe,EAAC,MAAM,CAAC;aAChC,CAAA;SACF;QACD,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,OAAO;gBACL,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO;gBAC1C,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,gBAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,mBAAmB;gBAChD,eAAe,EAAE,IAAI,CAAC,eAAe,IAAI,EAAE;gBAC3C,QAAQ,EAAE,CAAC,CAAC;gBACZ,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE;gBAChC,cAAc,EAAE,UAAU;gBAC1B,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,MAAM,EAAE,IAAA,uBAAe,EAAC,MAAM,CAAC;aAChC,CAAA;SACF;QACD,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAA;IACrD,CAAC;CACF;AAlED,0CAkEC;AAED,MAAa,YAAY;IACvB,OAAO,CAA0D;IACvD,QAAQ,CAAW;IAE7B,YAAY,QAAmB;QAC7B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAA;IACjC,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAA;IAC/B,CAAC;CACF;AAhBD,oCAgBC;AAED,MAAa,iBAAiB;IAClB,IAAI,CAAe;IAC7B,8EAA8E;IAC9E,OAAO,CAAyE;IAEhF,YAAY,IAAmB;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAA;IAC9B,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAA;IAC3B,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAA;IAC1B,CAAC;CACF;AApBD,8CAoBC;AAED,MAAa,aAAc,SAAQ,0BAAW;IAC5C,OAAO,CAAQ;IACf,WAAW,CAAQ;IACnB,WAAW,CAAM;IAEjB,YAAY,WAAmB,EAAE,OAAe,EAAE,IAAU;QAC1D,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAA;IACzB,CAAC;IAED,WAAW,CAAC,UAA0B,EAAE,MAAc;QACpD,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,YAAY,EAAE,IAAI,CAAC,WAAW;YAC9B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,gBAAgB,EAAE,CAAC;YACnB,eAAe,EAAE,EAAE;YACnB,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,sBAAc;YACvB,cAAc,EAAE,UAAU;YAC1B,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,MAAM,EAAE,IAAA,uBAAe,EAAC,MAAM,CAAC;SAChC,CAAA;IACH,CAAC;CACF;AA1BD,sCA0BC;AAED,MAAa,UAAW,SAAQ,0BAAW;IACzC,OAAO,CAAQ;IACf,UAAU,CAAQ;IAClB,WAAW,CAAM;IAEjB,YAAY,OAAe,EAAE,IAAU;QACrC,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAA;IACzB,CAAC;IAED,WAAW,CAAC,UAA0B,EAAE,MAAc;QACpD,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,YAAY,EAAE,IAAI,CAAC,UAAU;YAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,gBAAgB,EAAE,CAAC;YACnB,eAAe,EAAE,EAAE;YACnB,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,qBAAa;YACtB,cAAc,EAAE,UAAU;YAC1B,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,MAAM,EAAE,IAAA,uBAAe,EAAC,MAAM,CAAC;SAChC,CAAA;IACH,CAAC;CACF;AAzBD,gCAyBC","sourcesContent":["import { DataDescriptor, RecordMetaData, ProcessResult } from '../gen'\nimport { BaseContract, EventFilter } from 'ethers'\nimport { Block, Log } from '@ethersproject/abstract-provider'\nimport { normalizeLabels } from './meter'\nimport Long from 'long'\nimport { Trace } from './trace'\nimport { Labels } from './metadata'\nimport { SOL_MAINMET_ID, SUI_DEVNET_ID } from '../utils/chain'\nimport { BaseContext } from './base-context'\n\nexport abstract class EthContext extends BaseContext {\n chainId: number\n address: string\n log?: Log\n block?: Block\n trace?: Trace\n blockNumber: Long\n transactionHash?: string\n\n protected constructor(chainId: number, address: string, block?: Block, log?: Log, trace?: Trace) {\n super()\n this.chainId = chainId\n this.log = log\n this.block = block\n this.trace = trace\n this.address = address\n if (log) {\n this.blockNumber = Long.fromNumber(log.blockNumber, true)\n this.transactionHash = log.transactionHash\n } else if (block) {\n this.blockNumber = Long.fromNumber(block.number, true)\n } else if (trace) {\n this.blockNumber = Long.fromNumber(trace.blockNumber, true)\n this.transactionHash = trace.transactionHash\n }\n }\n}\n\nexport class ContractContext<\n TContract extends BaseContract,\n TContractBoundView extends BoundContractView<TContract, ContractView<TContract>>\n> extends EthContext {\n contract: TContractBoundView\n contractName: string\n\n constructor(\n contractName: string,\n view: TContractBoundView,\n chainId: number,\n block?: Block,\n log?: Log,\n trace?: Trace\n ) {\n super(chainId, view.rawContract.address, block, log, trace)\n view.context = this\n this.contractName = contractName\n this.contract = view\n }\n\n getMetaData(descriptor: DataDescriptor, labels: Labels): RecordMetaData {\n if (this.log) {\n return {\n address: this.contract.rawContract.address,\n contractName: this.contractName,\n blockNumber: this.blockNumber,\n transactionIndex: this.log.transactionIndex,\n transactionHash: this.transactionHash || '',\n logIndex: this.log.logIndex,\n chainId: this.chainId.toString(),\n dataDescriptor: descriptor,\n name: descriptor.name,\n labels: normalizeLabels(labels),\n }\n }\n if (this.block) {\n return {\n address: this.contract.rawContract.address,\n contractName: this.contractName,\n blockNumber: this.blockNumber,\n transactionIndex: -1,\n transactionHash: '',\n logIndex: -1,\n chainId: this.chainId.toString(),\n dataDescriptor: descriptor,\n name: descriptor.name,\n labels: normalizeLabels(labels),\n }\n }\n if (this.trace) {\n return {\n address: this.contract.rawContract.address,\n contractName: this.contractName,\n blockNumber: this.blockNumber,\n transactionIndex: this.trace.transactionPosition,\n transactionHash: this.transactionHash || '',\n logIndex: -1,\n chainId: this.chainId.toString(),\n dataDescriptor: descriptor,\n name: descriptor.name,\n labels: normalizeLabels(labels),\n }\n }\n throw new Error(\"Invaid ctx argument can't happen\")\n }\n}\n\nexport class ContractView<TContract extends BaseContract> {\n filters: { [name: string]: (...args: Array<any>) => EventFilter }\n protected contract: TContract\n\n constructor(contract: TContract) {\n this.contract = contract\n this.filters = contract.filters\n }\n\n get rawContract() {\n return this.contract\n }\n\n get provider() {\n return this.contract.provider\n }\n}\n\nexport class BoundContractView<TContract extends BaseContract, TContractView extends ContractView<TContract>> {\n protected view: TContractView\n // context will be set right after context creation (in context's constructor)\n context: ContractContext<TContract, BoundContractView<TContract, TContractView>>\n\n constructor(view: TContractView) {\n this.view = view\n }\n\n get rawContract() {\n return this.view.rawContract\n }\n\n get provider() {\n return this.view.provider\n }\n\n get filters() {\n return this.view.filters\n }\n}\n\nexport class SolanaContext extends BaseContext {\n address: string\n programName: string\n blockNumber: Long\n\n constructor(programName: string, address: string, slot: Long) {\n super()\n this.programName = programName\n this.address = address\n this.blockNumber = slot\n }\n\n getMetaData(descriptor: DataDescriptor, labels: Labels): RecordMetaData {\n return {\n address: this.address,\n contractName: this.programName,\n blockNumber: this.blockNumber,\n transactionIndex: 0,\n transactionHash: '', // TODO add\n logIndex: 0,\n chainId: SOL_MAINMET_ID, // TODO set in context\n dataDescriptor: descriptor,\n name: descriptor.name,\n labels: normalizeLabels(labels),\n }\n }\n}\n\nexport class SuiContext extends BaseContext {\n address: string\n moduleName: string\n blockNumber: Long\n\n constructor(address: string, slot: Long) {\n super()\n this.address = address\n this.blockNumber = slot\n }\n\n getMetaData(descriptor: DataDescriptor, labels: Labels): RecordMetaData {\n return {\n address: this.address,\n contractName: this.moduleName,\n blockNumber: this.blockNumber,\n transactionIndex: 0,\n transactionHash: '', // TODO\n logIndex: 0,\n chainId: SUI_DEVNET_ID, // TODO set in context\n dataDescriptor: descriptor,\n name: descriptor.name,\n labels: normalizeLabels(labels),\n }\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/core/context.ts"],"names":[],"mappings":"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","sourcesContent":["import { DataDescriptor, RecordMetaData, ProcessResult } from '../gen'\nimport { BaseContract, EventFilter } from 'ethers'\nimport { Block, Log } from '@ethersproject/abstract-provider'\nimport { normalizeLabels } from './meter'\nimport Long from 'long'\nimport { Trace } from './trace'\nimport { Labels } from './metadata'\nimport { SOL_MAINMET_ID, SUI_DEVNET_ID } from '../utils/chain'\nimport { BaseContext } from './base-context'\n\nexport abstract class EthContext extends BaseContext {\n chainId: number\n address: string\n log?: Log\n block?: Block\n trace?: Trace\n blockNumber: Long\n transactionHash?: string\n\n protected constructor(chainId: number, address: string, block?: Block, log?: Log, trace?: Trace) {\n super()\n this.chainId = chainId\n this.log = log\n this.block = block\n this.trace = trace\n this.address = address\n if (log) {\n this.blockNumber = Long.fromNumber(log.blockNumber, true)\n this.transactionHash = log.transactionHash\n } else if (block) {\n this.blockNumber = Long.fromNumber(block.number, true)\n } else if (trace) {\n this.blockNumber = Long.fromNumber(trace.blockNumber, true)\n this.transactionHash = trace.transactionHash\n }\n }\n}\n\nexport class ContractContext<\n TContract extends BaseContract,\n TContractBoundView extends BoundContractView<TContract, ContractView<TContract>>\n> extends EthContext {\n contract: TContractBoundView\n contractName: string\n\n constructor(\n contractName: string,\n view: TContractBoundView,\n chainId: number,\n block?: Block,\n log?: Log,\n trace?: Trace\n ) {\n super(chainId, view.rawContract.address, block, log, trace)\n view.context = this\n this.contractName = contractName\n this.contract = view\n }\n\n getMetaData(name: string, labels: Labels): RecordMetaData {\n if (this.log) {\n return {\n address: this.contract.rawContract.address,\n contractName: this.contractName,\n blockNumber: this.blockNumber,\n transactionIndex: this.log.transactionIndex,\n transactionHash: this.transactionHash || '',\n logIndex: this.log.logIndex,\n chainId: this.chainId.toString(),\n dataDescriptor: DataDescriptor.fromPartial({ name }),\n name: name,\n labels: normalizeLabels(labels),\n }\n }\n if (this.block) {\n return {\n address: this.contract.rawContract.address,\n contractName: this.contractName,\n blockNumber: this.blockNumber,\n transactionIndex: -1,\n transactionHash: '',\n logIndex: -1,\n chainId: this.chainId.toString(),\n dataDescriptor: DataDescriptor.fromPartial({ name }),\n name: name,\n labels: normalizeLabels(labels),\n }\n }\n if (this.trace) {\n return {\n address: this.contract.rawContract.address,\n contractName: this.contractName,\n blockNumber: this.blockNumber,\n transactionIndex: this.trace.transactionPosition,\n transactionHash: this.transactionHash || '',\n logIndex: -1,\n chainId: this.chainId.toString(),\n dataDescriptor: DataDescriptor.fromPartial({ name }),\n name: name,\n labels: normalizeLabels(labels),\n }\n }\n throw new Error(\"Invaid ctx argument can't happen\")\n }\n}\n\nexport class ContractView<TContract extends BaseContract> {\n filters: { [name: string]: (...args: Array<any>) => EventFilter }\n protected contract: TContract\n\n constructor(contract: TContract) {\n this.contract = contract\n this.filters = contract.filters\n }\n\n get rawContract() {\n return this.contract\n }\n\n get provider() {\n return this.contract.provider\n }\n}\n\nexport class BoundContractView<TContract extends BaseContract, TContractView extends ContractView<TContract>> {\n protected view: TContractView\n // context will be set right after context creation (in context's constructor)\n context: ContractContext<TContract, BoundContractView<TContract, TContractView>>\n\n constructor(view: TContractView) {\n this.view = view\n }\n\n get rawContract() {\n return this.view.rawContract\n }\n\n get provider() {\n return this.view.provider\n }\n\n get filters() {\n return this.view.filters\n }\n}\n\nexport class SolanaContext extends BaseContext {\n address: string\n programName: string\n blockNumber: Long\n\n constructor(programName: string, address: string, slot: Long) {\n super()\n this.programName = programName\n this.address = address\n this.blockNumber = slot\n }\n\n getMetaData(name: string, labels: Labels): RecordMetaData {\n return {\n address: this.address,\n contractName: this.programName,\n blockNumber: this.blockNumber,\n transactionIndex: 0,\n transactionHash: '', // TODO add\n logIndex: 0,\n chainId: SOL_MAINMET_ID, // TODO set in context\n dataDescriptor: DataDescriptor.fromPartial({ name }),\n name: name,\n labels: normalizeLabels(labels),\n }\n }\n}\n\nexport class SuiContext extends BaseContext {\n address: string\n moduleName: string\n blockNumber: Long\n\n constructor(address: string, slot: Long) {\n super()\n this.address = address\n this.blockNumber = slot\n }\n\n getMetaData(name: string, labels: Labels): RecordMetaData {\n return {\n address: this.address,\n contractName: this.moduleName,\n blockNumber: this.blockNumber,\n transactionIndex: 0,\n transactionHash: '', // TODO\n logIndex: 0,\n chainId: SUI_DEVNET_ID, // TODO set in context\n dataDescriptor: DataDescriptor.fromPartial({ name }),\n name: name,\n labels: normalizeLabels(labels),\n }\n }\n}\n"]}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { BaseContext } from './base-context';
|
|
2
|
+
import { NamedResultDescriptor } from './metadata';
|
|
2
3
|
export interface Event {
|
|
3
4
|
distinctId: string;
|
|
4
5
|
payload?: Record<string, string>;
|
|
@@ -8,10 +9,9 @@ export interface TrackerOptions {
|
|
|
8
9
|
unique?: boolean;
|
|
9
10
|
distinctByDays?: number[];
|
|
10
11
|
}
|
|
11
|
-
export declare class EventTracker {
|
|
12
|
+
export declare class EventTracker extends NamedResultDescriptor {
|
|
12
13
|
static DEFAULT_OPTIONS: TrackerOptions;
|
|
13
14
|
static register(eventName: string, options?: TrackerOptions): EventTracker;
|
|
14
|
-
eventName: string;
|
|
15
15
|
options: TrackerOptions;
|
|
16
16
|
protected constructor(eventName: string, options: TrackerOptions);
|
|
17
17
|
trackEvent(ctx: BaseContext, event: Event): void;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.AccountEventTracker = exports.EventTracker = void 0;
|
|
4
|
-
const
|
|
4
|
+
const metadata_1 = require("./metadata");
|
|
5
5
|
// Track Event with an identity associate with it
|
|
6
|
-
class EventTracker {
|
|
6
|
+
class EventTracker extends metadata_1.NamedResultDescriptor {
|
|
7
7
|
static DEFAULT_OPTIONS = {
|
|
8
8
|
totalByDay: true,
|
|
9
9
|
unique: true,
|
|
@@ -13,15 +13,14 @@ class EventTracker {
|
|
|
13
13
|
global.PROCESSOR_STATE.eventTrackers.push(tracker);
|
|
14
14
|
return tracker;
|
|
15
15
|
}
|
|
16
|
-
eventName;
|
|
17
16
|
options;
|
|
18
17
|
constructor(eventName, options) {
|
|
19
|
-
|
|
18
|
+
super(eventName);
|
|
20
19
|
this.options = options;
|
|
21
20
|
}
|
|
22
21
|
trackEvent(ctx, event) {
|
|
23
22
|
const res = {
|
|
24
|
-
metadata: ctx.getMetaData(
|
|
23
|
+
metadata: ctx.getMetaData(this.name, {}),
|
|
25
24
|
distinctEntityId: event.distinctId,
|
|
26
25
|
attributes: JSON.stringify({}),
|
|
27
26
|
runtimeInfo: undefined,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-tracker.js","sourceRoot":"","sources":["../../src/core/event-tracker.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"event-tracker.js","sourceRoot":"","sources":["../../src/core/event-tracker.ts"],"names":[],"mappings":";;;AAEA,yCAAkD;AAgBlD,iDAAiD;AACjD,MAAa,YAAa,SAAQ,gCAAqB;IACrD,MAAM,CAAC,eAAe,GAAmB;QACvC,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,IAAI;KACb,CAAA;IAED,MAAM,CAAC,QAAQ,CAAC,SAAiB,EAAE,OAAwB;QACzD,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,SAAS,EAAE,EAAE,GAAG,YAAY,CAAC,eAAe,EAAE,GAAG,OAAO,EAAE,CAAC,CAAA;QAC5F,MAAM,CAAC,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAClD,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,OAAO,CAAgB;IACvB,YAAsB,SAAiB,EAAE,OAAuB;QAC9D,KAAK,CAAC,SAAS,CAAC,CAAA;QAChB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;IAED,UAAU,CAAC,GAAgB,EAAE,KAAY;QACvC,MAAM,GAAG,GAAwB;YAC/B,QAAQ,EAAE,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YACxC,gBAAgB,EAAE,KAAK,CAAC,UAAU;YAClC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,WAAW,EAAE,SAAS;SACvB,CAAA;QACD,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC1B,CAAC;;AA1BH,oCA2BC;AAED,MAAa,mBAAoB,SAAQ,YAAY;IACnD,MAAM,CAAC,eAAe,GAAmB;QACvC,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,IAAI;QACZ,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;KAC3B,CAAA;IAED,MAAM,CAAC,QAAQ,CAAC,SAAkB,EAAE,OAAwB;QAC1D,IAAI,SAAS,EAAE;YACb,SAAS,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;SAC1C;aAAM;YACL,SAAS,GAAG,MAAM,CAAA;SACnB;QACD,MAAM,OAAO,GAAG,IAAI,mBAAmB,CAAC,SAAS,EAAE,EAAE,GAAG,mBAAmB,CAAC,eAAe,EAAE,GAAG,OAAO,EAAE,CAAC,CAAA;QAC1G,MAAM,CAAC,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAClD,OAAO,OAAO,CAAA;IAChB,CAAC;;AAhBH,kDAiBC","sourcesContent":["import { BaseContext } from './base-context'\nimport { DataDescriptor, EventTrackingResult } from '../gen'\nimport { NamedResultDescriptor } from './metadata'\n\nexport interface Event {\n // The unique identifier of main identity associate with an event\n // .e.g user id / toekn address / account address / contract address id\n //\n distinctId: string\n payload?: Record<string, string>\n}\n\nexport interface TrackerOptions {\n totalByDay?: boolean\n unique?: boolean\n distinctByDays?: number[]\n}\n\n// Track Event with an identity associate with it\nexport class EventTracker extends NamedResultDescriptor {\n static DEFAULT_OPTIONS: TrackerOptions = {\n totalByDay: true,\n unique: true,\n }\n\n static register(eventName: string, options?: TrackerOptions) {\n const tracker = new EventTracker(eventName, { ...EventTracker.DEFAULT_OPTIONS, ...options })\n global.PROCESSOR_STATE.eventTrackers.push(tracker)\n return tracker\n }\n\n options: TrackerOptions\n protected constructor(eventName: string, options: TrackerOptions) {\n super(eventName)\n this.options = options\n }\n\n trackEvent(ctx: BaseContext, event: Event) {\n const res: EventTrackingResult = {\n metadata: ctx.getMetaData(this.name, {}),\n distinctEntityId: event.distinctId,\n attributes: JSON.stringify({}),\n runtimeInfo: undefined,\n }\n ctx.res.events.push(res)\n }\n}\n\nexport class AccountEventTracker extends EventTracker {\n static DEFAULT_OPTIONS: TrackerOptions = {\n totalByDay: true,\n unique: true,\n distinctByDays: [1, 7, 30],\n }\n\n static register(eventName?: string, options?: TrackerOptions) {\n if (eventName) {\n eventName = ['user', eventName].join('_')\n } else {\n eventName = 'user'\n }\n const tracker = new AccountEventTracker(eventName, { ...AccountEventTracker.DEFAULT_OPTIONS, ...options })\n global.PROCESSOR_STATE.eventTrackers.push(tracker)\n return tracker\n }\n}\n"]}
|
package/lib/core/exporter.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BaseContext } from './base-context';
|
|
2
|
+
import { NamedResultDescriptor } from './metadata';
|
|
2
3
|
export declare type Export = Record<string, any>;
|
|
3
|
-
export declare class Exporter {
|
|
4
|
+
export declare class Exporter extends NamedResultDescriptor {
|
|
4
5
|
static register(name: string, channel: string): Exporter;
|
|
5
|
-
name: string;
|
|
6
6
|
channel: string;
|
|
7
7
|
protected constructor(name: string, channel: string);
|
|
8
8
|
emit(ctx: BaseContext, data: Export): void;
|
package/lib/core/exporter.js
CHANGED
|
@@ -1,22 +1,21 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Exporter = void 0;
|
|
4
|
-
const
|
|
5
|
-
class Exporter {
|
|
4
|
+
const metadata_1 = require("./metadata");
|
|
5
|
+
class Exporter extends metadata_1.NamedResultDescriptor {
|
|
6
6
|
static register(name, channel) {
|
|
7
7
|
const exporter = new Exporter(name, channel);
|
|
8
8
|
global.PROCESSOR_STATE.exporters.push(exporter);
|
|
9
9
|
return exporter;
|
|
10
10
|
}
|
|
11
|
-
name;
|
|
12
11
|
channel;
|
|
13
12
|
constructor(name, channel) {
|
|
14
|
-
|
|
13
|
+
super(name);
|
|
15
14
|
this.channel = channel;
|
|
16
15
|
}
|
|
17
16
|
emit(ctx, data) {
|
|
18
17
|
const res = {
|
|
19
|
-
metadata: ctx.getMetaData(
|
|
18
|
+
metadata: ctx.getMetaData(this.name, {}),
|
|
20
19
|
payload: JSON.stringify(data),
|
|
21
20
|
runtimeInfo: undefined,
|
|
22
21
|
};
|
package/lib/core/exporter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exporter.js","sourceRoot":"","sources":["../../src/core/exporter.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"exporter.js","sourceRoot":"","sources":["../../src/core/exporter.ts"],"names":[],"mappings":";;;AAEA,yCAAkD;AAIlD,MAAa,QAAS,SAAQ,gCAAqB;IACjD,MAAM,CAAC,QAAQ,CAAC,IAAY,EAAE,OAAe;QAC3C,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAC5C,MAAM,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC/C,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,OAAO,CAAQ;IACf,YAAsB,IAAY,EAAE,OAAe;QACjD,KAAK,CAAC,IAAI,CAAC,CAAA;QACX,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;IAED,IAAI,CAAC,GAAgB,EAAE,IAAY;QACjC,MAAM,GAAG,GAAiB;YACxB,QAAQ,EAAE,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YACxC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YAC7B,WAAW,EAAE,SAAS;SACvB,CAAA;QACD,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC3B,CAAC;CACF;AArBD,4BAqBC","sourcesContent":["import { BaseContext } from './base-context'\nimport { ExportResult } from '@sentio/sdk'\nimport { NamedResultDescriptor } from './metadata'\n\nexport type Export = Record<string, any>\n\nexport class Exporter extends NamedResultDescriptor {\n static register(name: string, channel: string) {\n const exporter = new Exporter(name, channel)\n global.PROCESSOR_STATE.exporters.push(exporter)\n return exporter\n }\n\n channel: string\n protected constructor(name: string, channel: string) {\n super(name)\n this.channel = channel\n }\n\n emit(ctx: BaseContext, data: Export) {\n const res: ExportResult = {\n metadata: ctx.getMetaData(this.name, {}),\n payload: JSON.stringify(data),\n runtimeInfo: undefined,\n }\n ctx.res.exports.push(res)\n }\n}\n"]}
|
package/lib/core/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { BigDecimal } from './big-decimal';
|
|
2
2
|
export { ContractContext, ContractView, BoundContractView, SolanaContext } from './context';
|
|
3
|
-
export { CounterBinding, Meter, GaugeBinding, Counter, Gauge,
|
|
3
|
+
export { CounterBinding, Meter, GaugeBinding, Counter, Gauge, MetricOptions } from './meter';
|
|
4
4
|
export { EventTracker, AccountEventTracker } from './event-tracker';
|
|
5
5
|
export { type Numberish, toBigInteger, toMetricValue } from './numberish';
|
|
6
6
|
export { BindOptions, SolanaBindOptions } from './bind-options';
|
package/lib/core/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SuiBindOptions = exports.SuiBaseProcessor = exports.SolanaBaseProcessor = exports.BaseProcessorTemplate = exports.GenericProcessor = exports.BaseProcessor = exports.SolanaBindOptions = exports.BindOptions = exports.toMetricValue = exports.toBigInteger = exports.AccountEventTracker = exports.EventTracker = exports.
|
|
3
|
+
exports.SuiBindOptions = exports.SuiBaseProcessor = exports.SolanaBaseProcessor = exports.BaseProcessorTemplate = exports.GenericProcessor = exports.BaseProcessor = exports.SolanaBindOptions = exports.BindOptions = exports.toMetricValue = exports.toBigInteger = exports.AccountEventTracker = exports.EventTracker = exports.MetricOptions = exports.Gauge = exports.Counter = exports.GaugeBinding = exports.Meter = exports.CounterBinding = exports.SolanaContext = exports.BoundContractView = exports.ContractView = exports.ContractContext = exports.BigDecimal = void 0;
|
|
4
4
|
var big_decimal_1 = require("./big-decimal");
|
|
5
5
|
Object.defineProperty(exports, "BigDecimal", { enumerable: true, get: function () { return big_decimal_1.BigDecimal; } });
|
|
6
6
|
var context_1 = require("./context");
|
|
@@ -14,7 +14,7 @@ Object.defineProperty(exports, "Meter", { enumerable: true, get: function () { r
|
|
|
14
14
|
Object.defineProperty(exports, "GaugeBinding", { enumerable: true, get: function () { return meter_1.GaugeBinding; } });
|
|
15
15
|
Object.defineProperty(exports, "Counter", { enumerable: true, get: function () { return meter_1.Counter; } });
|
|
16
16
|
Object.defineProperty(exports, "Gauge", { enumerable: true, get: function () { return meter_1.Gauge; } });
|
|
17
|
-
Object.defineProperty(exports, "
|
|
17
|
+
Object.defineProperty(exports, "MetricOptions", { enumerable: true, get: function () { return meter_1.MetricOptions; } });
|
|
18
18
|
var event_tracker_1 = require("./event-tracker");
|
|
19
19
|
Object.defineProperty(exports, "EventTracker", { enumerable: true, get: function () { return event_tracker_1.EventTracker; } });
|
|
20
20
|
Object.defineProperty(exports, "AccountEventTracker", { enumerable: true, get: function () { return event_tracker_1.AccountEventTracker; } });
|
package/lib/core/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":";;;AAAA,6CAA0C;AAAjC,yGAAA,UAAU,OAAA;AACnB,qCAA2F;AAAlF,0GAAA,eAAe,OAAA;AAAE,uGAAA,YAAY,OAAA;AAAE,4GAAA,iBAAiB,OAAA;AAAE,wGAAA,aAAa,OAAA;AACxE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":";;;AAAA,6CAA0C;AAAjC,yGAAA,UAAU,OAAA;AACnB,qCAA2F;AAAlF,0GAAA,eAAe,OAAA;AAAE,uGAAA,YAAY,OAAA;AAAE,4GAAA,iBAAiB,OAAA;AAAE,wGAAA,aAAa,OAAA;AACxE,iCAA4F;AAAnF,uGAAA,cAAc,OAAA;AAAE,8FAAA,KAAK,OAAA;AAAE,qGAAA,YAAY,OAAA;AAAE,gGAAA,OAAO,OAAA;AAAE,8FAAA,KAAK,OAAA;AAAE,sGAAA,aAAa,OAAA;AAC3E,iDAAmE;AAA1D,6GAAA,YAAY,OAAA;AAAE,oHAAA,mBAAmB,OAAA;AAC1C,yCAAyE;AAAhD,yGAAA,YAAY,OAAA;AAAE,0GAAA,aAAa,OAAA;AAEpD,+CAA+D;AAAtD,2GAAA,WAAW,OAAA;AAAE,iHAAA,iBAAiB,OAAA;AAEvC,mDAAgD;AAAvC,+GAAA,aAAa,OAAA;AACtB,yDAAsD;AAA7C,qHAAA,gBAAgB,OAAA;AACzB,qEAAiE;AAAxD,gIAAA,qBAAqB,OAAA;AAC9B,uDAAwD;AAA/C,uHAAA,mBAAmB,OAAA;AAC5B,iDAAkE;AAAzD,iHAAA,gBAAgB,OAAA;AAAE,+GAAA,cAAc,OAAA","sourcesContent":["export { BigDecimal } from './big-decimal'\nexport { ContractContext, ContractView, BoundContractView, SolanaContext } from './context'\nexport { CounterBinding, Meter, GaugeBinding, Counter, Gauge, MetricOptions } from './meter'\nexport { EventTracker, AccountEventTracker } from './event-tracker'\nexport { type Numberish, toBigInteger, toMetricValue } from './numberish'\n\nexport { BindOptions, SolanaBindOptions } from './bind-options'\n\nexport { BaseProcessor } from './base-processor'\nexport { GenericProcessor } from './generic-processor'\nexport { BaseProcessorTemplate } from './base-processor-template'\nexport { SolanaBaseProcessor } from './solana-processor'\nexport { SuiBaseProcessor, SuiBindOptions } from './sui-processor'\n// export * from '../aptos'\n\nexport type { TypedCallTrace, Trace } from './trace'\n"]}
|
package/lib/core/logger.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BaseContext } from './base-context';
|
|
2
2
|
import { LogLevel } from '../gen';
|
|
3
|
-
import {
|
|
3
|
+
import { NamedResultDescriptor } from './metadata';
|
|
4
4
|
export declare type Attributes = Record<string, any>;
|
|
5
|
-
export declare class Logger extends
|
|
5
|
+
export declare class Logger extends NamedResultDescriptor {
|
|
6
6
|
private readonly ctx;
|
|
7
7
|
constructor(ctx: BaseContext, name?: string);
|
|
8
8
|
withName(name: string): Logger;
|
package/lib/core/logger.js
CHANGED
|
@@ -3,10 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.Logger = void 0;
|
|
4
4
|
const gen_1 = require("../gen");
|
|
5
5
|
const metadata_1 = require("./metadata");
|
|
6
|
-
class Logger extends metadata_1.
|
|
6
|
+
class Logger extends metadata_1.NamedResultDescriptor {
|
|
7
7
|
ctx;
|
|
8
8
|
constructor(ctx, name = '') {
|
|
9
|
-
super(
|
|
9
|
+
super(name);
|
|
10
10
|
this.ctx = ctx;
|
|
11
11
|
}
|
|
12
12
|
withName(name) {
|
|
@@ -16,10 +16,9 @@ class Logger extends metadata_1.DescriptorWithUsage {
|
|
|
16
16
|
if (typeof message !== 'string' && !(message instanceof String)) {
|
|
17
17
|
message = message.toString();
|
|
18
18
|
}
|
|
19
|
-
this.usage++;
|
|
20
19
|
this.ctx.res.logs.push({
|
|
21
20
|
// name: this.name,
|
|
22
|
-
metadata: this.ctx.getMetaData(this.
|
|
21
|
+
metadata: this.ctx.getMetaData(this.name, {}),
|
|
23
22
|
level,
|
|
24
23
|
message,
|
|
25
24
|
attributes: JSON.stringify(attributes),
|
package/lib/core/logger.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/core/logger.ts"],"names":[],"mappings":";;;AACA,gCAAiD;AACjD,
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/core/logger.ts"],"names":[],"mappings":";;;AACA,gCAAiD;AACjD,yCAAkD;AAIlD,MAAa,MAAO,SAAQ,gCAAqB;IAC9B,GAAG,CAAa;IAEjC,YAAY,GAAgB,EAAE,IAAI,GAAG,EAAE;QACrC,KAAK,CAAC,IAAI,CAAC,CAAA;QACX,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;IAChB,CAAC;IAED,QAAQ,CAAC,IAAY;QACnB,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IACnC,CAAC;IAED,GAAG,CAAC,KAAe,EAAE,OAAY,EAAE,aAAyB,EAAE;QAC5D,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,YAAY,MAAM,CAAC,EAAE;YAC/D,OAAO,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAA;SAC7B;QAED,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;YACrB,mBAAmB;YACnB,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YAC7C,KAAK;YACL,OAAO;YACP,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;YACtC,WAAW,EAAE,SAAS;SACvB,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,CAAC,GAAQ,EAAE,aAAyB,EAAE;QACxC,IAAI,CAAC,GAAG,CAAC,cAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,UAAU,CAAC,CAAA;IAC1C,CAAC;IAED,IAAI,CAAC,GAAQ,EAAE,aAAyB,EAAE;QACxC,IAAI,CAAC,GAAG,CAAC,cAAQ,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,CAAC,CAAA;IAC7C,CAAC;IAED,KAAK,CAAC,GAAQ,EAAE,aAAyB,EAAE;QACzC,IAAI,CAAC,GAAG,CAAC,cAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,UAAU,CAAC,CAAA;IAC3C,CAAC;IAED,QAAQ,CAAC,GAAQ,EAAE,aAAyB,EAAE;QAC5C,IAAI,CAAC,GAAG,CAAC,cAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE,UAAU,CAAC,CAAA;IAC9C,CAAC;CACF;AA1CD,wBA0CC","sourcesContent":["import { BaseContext } from './base-context'\nimport { DataDescriptor, LogLevel } from '../gen'\nimport { NamedResultDescriptor } from './metadata'\n\nexport type Attributes = Record<string, any>\n\nexport class Logger extends NamedResultDescriptor {\n private readonly ctx: BaseContext\n\n constructor(ctx: BaseContext, name = '') {\n super(name)\n this.ctx = ctx\n }\n\n withName(name: string) {\n return new Logger(this.ctx, name)\n }\n\n log(level: LogLevel, message: any, attributes: Attributes = {}) {\n if (typeof message !== 'string' && !(message instanceof String)) {\n message = message.toString()\n }\n\n this.ctx.res.logs.push({\n // name: this.name,\n metadata: this.ctx.getMetaData(this.name, {}), // GetRecordMetaData(this.ctx, this, {}),\n level,\n message,\n attributes: JSON.stringify(attributes),\n runtimeInfo: undefined,\n })\n }\n\n info(msg: any, attributes: Attributes = {}) {\n this.log(LogLevel.INFO, msg, attributes)\n }\n\n warn(msg: any, attributes: Attributes = {}) {\n this.log(LogLevel.WARNING, msg, attributes)\n }\n\n error(msg: any, attributes: Attributes = {}) {\n this.log(LogLevel.ERROR, msg, attributes)\n }\n\n critical(msg: any, attributes: Attributes = {}) {\n this.log(LogLevel.CRITICAL, msg, attributes)\n }\n}\n"]}
|
package/lib/core/metadata.d.ts
CHANGED
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
import { DataDescriptor } from '../gen';
|
|
2
1
|
export declare type Labels = {
|
|
3
2
|
[key: string]: string;
|
|
4
3
|
};
|
|
5
|
-
export declare class
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
constructor(descriptor: DataDescriptor);
|
|
9
|
-
getShortDescriptor(): DataDescriptor;
|
|
4
|
+
export declare class NamedResultDescriptor {
|
|
5
|
+
name: string;
|
|
6
|
+
constructor(name: string);
|
|
10
7
|
}
|
package/lib/core/metadata.js
CHANGED
|
@@ -1,22 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
const gen_1 = require("../gen");
|
|
3
|
+
exports.NamedResultDescriptor = void 0;
|
|
5
4
|
const meter_1 = require("./meter");
|
|
6
|
-
class
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
this.descriptor = descriptor;
|
|
11
|
-
this.descriptor.name = (0, meter_1.normalizeName)(descriptor.name);
|
|
12
|
-
}
|
|
13
|
-
getShortDescriptor() {
|
|
14
|
-
if (this.usage > 0) {
|
|
15
|
-
// Other setting don't need to be write multiple times
|
|
16
|
-
return gen_1.DataDescriptor.fromPartial({ name: this.descriptor.name });
|
|
17
|
-
}
|
|
18
|
-
return this.descriptor;
|
|
5
|
+
class NamedResultDescriptor {
|
|
6
|
+
name;
|
|
7
|
+
constructor(name) {
|
|
8
|
+
this.name = (0, meter_1.normalizeName)(name);
|
|
19
9
|
}
|
|
20
10
|
}
|
|
21
|
-
exports.
|
|
11
|
+
exports.NamedResultDescriptor = NamedResultDescriptor;
|
|
22
12
|
//# sourceMappingURL=metadata.js.map
|
package/lib/core/metadata.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/core/metadata.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/core/metadata.ts"],"names":[],"mappings":";;;AAAA,mCAAuC;AAIvC,MAAa,qBAAqB;IAChC,IAAI,CAAQ;IAEZ,YAAY,IAAY;QACtB,IAAI,CAAC,IAAI,GAAG,IAAA,qBAAa,EAAC,IAAI,CAAC,CAAA;IACjC,CAAC;CACF;AAND,sDAMC","sourcesContent":["import { normalizeName } from './meter'\n\nexport type Labels = { [key: string]: string }\n\nexport class NamedResultDescriptor {\n name: string\n\n constructor(name: string) {\n this.name = normalizeName(name)\n }\n}\n"]}
|
package/lib/core/meter.d.ts
CHANGED
|
@@ -1,21 +1,28 @@
|
|
|
1
1
|
import { BaseContext } from './base-context';
|
|
2
2
|
import { Numberish } from './numberish';
|
|
3
|
-
import {
|
|
3
|
+
import { Labels, NamedResultDescriptor } from './metadata';
|
|
4
|
+
import { AggregationConfig, MetricConfig } from '../gen';
|
|
4
5
|
export declare function normalizeName(name: string): string;
|
|
5
6
|
export declare function normalizeKey(name: string): string;
|
|
6
7
|
export declare function normalizeValue(name: string): string;
|
|
7
8
|
export declare function normalizeLabels(labels: Labels): Labels;
|
|
8
|
-
export declare class
|
|
9
|
+
export declare class MetricOptions {
|
|
9
10
|
unit?: string;
|
|
10
11
|
description?: string;
|
|
11
12
|
sparse?: boolean;
|
|
12
|
-
|
|
13
|
+
aggregationConfig?: Partial<AggregationConfig>;
|
|
13
14
|
}
|
|
14
|
-
export declare class
|
|
15
|
-
|
|
15
|
+
export declare class CounterOptions {
|
|
16
|
+
unit?: string;
|
|
17
|
+
description?: string;
|
|
18
|
+
sparse?: boolean;
|
|
19
|
+
}
|
|
20
|
+
export declare class Metric extends NamedResultDescriptor {
|
|
21
|
+
descriptor: MetricConfig;
|
|
22
|
+
constructor(name: string, option?: MetricOptions);
|
|
16
23
|
}
|
|
17
24
|
export declare class Counter extends Metric {
|
|
18
|
-
static register(name: string, option?:
|
|
25
|
+
static register(name: string, option?: CounterOptions): Counter;
|
|
19
26
|
add(ctx: BaseContext, value: Numberish, labels?: Labels): void;
|
|
20
27
|
sub(ctx: BaseContext, value: Numberish, labels?: Labels): void;
|
|
21
28
|
private record;
|
|
@@ -28,7 +35,7 @@ export declare class CounterBinding {
|
|
|
28
35
|
sub(value: Numberish, labels?: Labels): void;
|
|
29
36
|
}
|
|
30
37
|
export declare class Gauge extends Metric {
|
|
31
|
-
static register(name: string, option?:
|
|
38
|
+
static register(name: string, option?: MetricOptions): Gauge;
|
|
32
39
|
record(ctx: BaseContext, value: Numberish, labels?: Labels): void;
|
|
33
40
|
}
|
|
34
41
|
export declare class GaugeBinding {
|