@sentio/sdk 0.3.10 → 0.3.13
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/dist/base-processor-template.d.ts +4 -4
- package/dist/base-processor-template.js +10 -16
- package/dist/base-processor-template.js.map +1 -1
- package/dist/base-processor.js +2 -39
- package/dist/base-processor.js.map +1 -1
- package/dist/binds.d.ts +10 -0
- package/dist/binds.js +55 -0
- package/dist/binds.js.map +1 -0
- package/dist/cli/build.js +2 -2
- package/dist/cli/cli.js.map +1 -1
- package/dist/cli/key.js.map +1 -1
- package/dist/cli/webpack.config.js +1 -1
- package/dist/context.d.ts +3 -1
- package/dist/context.js +3 -1
- package/dist/context.js.map +1 -1
- package/dist/contracts.d.ts +1 -0
- package/dist/contracts.js +3 -0
- package/dist/contracts.js.map +1 -0
- package/dist/gen/builtin.d.ts +1 -1
- package/dist/gen/processor/protos/processor.d.ts +25 -1
- package/dist/gen/processor/protos/processor.js +177 -12
- package/dist/gen/processor/protos/processor.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +9 -3
- package/dist/index.js.map +1 -1
- package/dist/meter.d.ts +1 -1
- package/dist/meter.js +8 -6
- package/dist/meter.js.map +1 -1
- package/dist/numberish.js +1 -1
- package/dist/numberish.js.map +1 -1
- package/dist/numberish.test.js +3 -2
- package/dist/numberish.test.js.map +1 -1
- package/dist/processor-state.d.ts +16 -0
- package/dist/processor-state.js +20 -0
- package/dist/processor-state.js.map +1 -0
- package/dist/processor.js +4 -4
- package/dist/processor.js.map +1 -1
- package/dist/provider.js +4 -4
- package/dist/provider.js.map +1 -1
- package/dist/service.d.ts +2 -2
- package/dist/service.js +62 -54
- package/dist/service.js.map +1 -1
- package/dist/solana/builtin/spl-token-processor.d.ts +2 -2
- package/dist/solana/builtin/spl-token-processor.js +17 -18
- package/dist/solana/builtin/spl-token-processor.js.map +1 -1
- package/dist/solana-processor.d.ts +4 -3
- package/dist/solana-processor.js +26 -21
- package/dist/solana-processor.js.map +1 -1
- package/dist/target-ethers-sentio/codegen.js +40 -16
- package/dist/target-ethers-sentio/codegen.js.map +1 -1
- package/dist/test-case/clean-test.js +2 -4
- package/dist/test-case/clean-test.js.map +1 -1
- package/dist/test-case/erc20.js +3 -1
- package/dist/test-case/erc20.js.map +1 -1
- package/dist/test-case/erc20.test.js +7 -3
- package/dist/test-case/erc20.test.js.map +1 -1
- package/dist/test-case/mirrorworld.js.map +1 -1
- package/dist/test-case/solana.test.js +1 -0
- package/dist/test-case/solana.test.js.map +1 -1
- package/dist/test-case/types/erc20_processor.d.ts +7 -4
- package/dist/test-case/types/erc20_processor.js +55 -31
- package/dist/test-case/types/erc20_processor.js.map +1 -1
- package/dist/test-case/types/game_wallet_processor.d.ts +1 -1
- package/dist/test-case/types/game_wallet_processor.js +3 -3
- package/dist/test-case/types/game_wallet_processor.js.map +1 -1
- package/dist/test-case/types/wormhole_processor.d.ts +3 -3
- package/dist/test-case/types/wormhole_processor.js +8 -8
- package/dist/test-case/types/wormhole_processor.js.map +1 -1
- package/dist/utils/chainmap.d.ts +4 -0
- package/dist/utils/chainmap.js +95 -0
- package/dist/utils/chainmap.js.map +1 -0
- package/dist/utils/contracts.d.ts +0 -0
- package/dist/utils/contracts.js +2 -0
- package/dist/utils/contracts.js.map +1 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.js +6 -0
- package/dist/utils/index.js.map +1 -0
- package/package.json +2 -2
|
@@ -7,7 +7,6 @@ const types_1 = require("@typechain/ethers-v5/dist/codegen/types");
|
|
|
7
7
|
const signatures_1 = require("typechain/dist/utils/signatures");
|
|
8
8
|
function codeGenSentioFile(contract) {
|
|
9
9
|
const source = `
|
|
10
|
-
const namer = new ContractNamer("${contract.name}")
|
|
11
10
|
const templateContract = ${contract.name}__factory.connect("", DummyProvider)
|
|
12
11
|
|
|
13
12
|
class ${contract.name}ContractWrapper extends ContractWrapper<${contract.name}> {
|
|
@@ -26,12 +25,15 @@ function codeGenSentioFile(contract) {
|
|
|
26
25
|
|
|
27
26
|
export class ${contract.name}ProcessorTemplate extends BaseProcessorTemplate<${contract.name}, ${contract.name}ContractWrapper> {
|
|
28
27
|
bindInternal(options: BindOptions) {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
28
|
+
let processor = getProcessor("${contract.name}", options) as ${contract.name}Processor
|
|
29
|
+
if (!processor) {
|
|
30
|
+
const wrapper = get${contract.name}Contract(options.address, options.network)
|
|
31
|
+
const finalOptions = Object.assign({}, options)
|
|
32
|
+
finalOptions.name = getContractName("${contract.name}", options.name, options.address, options.network)
|
|
33
|
+
processor = new ${contract.name}Processor(finalOptions, wrapper)
|
|
34
|
+
addProcessor("${contract.name}", options, processor)
|
|
33
35
|
}
|
|
34
|
-
return
|
|
36
|
+
return processor
|
|
35
37
|
}
|
|
36
38
|
|
|
37
39
|
${Object.values(contract.events)
|
|
@@ -61,22 +63,39 @@ function codeGenSentioFile(contract) {
|
|
|
61
63
|
public static filters = templateContract.filters
|
|
62
64
|
|
|
63
65
|
public static bind(options: BindOptions): ${contract.name}Processor {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
66
|
+
let processor = getProcessor("${contract.name}", options) as ${contract.name}Processor
|
|
67
|
+
if (!processor) {
|
|
68
|
+
const wrapper = get${contract.name}Contract(options.address, options.network)
|
|
69
|
+
|
|
70
|
+
const finalOptions = Object.assign({}, options)
|
|
71
|
+
finalOptions.name = getContractName("${contract.name}", options.name, options.address, options.network)
|
|
72
|
+
processor = new ${contract.name}Processor(finalOptions, wrapper)
|
|
73
|
+
addProcessor("${contract.name}", options, processor)
|
|
69
74
|
}
|
|
70
|
-
return
|
|
75
|
+
return processor
|
|
71
76
|
}
|
|
72
77
|
}
|
|
73
78
|
|
|
79
|
+
export function get${contract.name}Contract(address: string, network: Networkish = 1): ${contract.name}ContractWrapper {
|
|
80
|
+
let contract = getContractByABI("${contract.name}", address, network) as ${contract.name}ContractWrapper
|
|
81
|
+
if (!contract) {
|
|
82
|
+
const rawContract = ${contract.name}__factory.connect(address, getProvider(network))
|
|
83
|
+
contract = new ${contract.name}ContractWrapper(rawContract)
|
|
84
|
+
addContractByABI("${contract.name}", address, network, contract)
|
|
85
|
+
}
|
|
86
|
+
return contract
|
|
87
|
+
}
|
|
88
|
+
|
|
74
89
|
// export const ${contract.name}Processor = new ${contract.name}ProcessorTemplate("${contract.name}")
|
|
75
90
|
`;
|
|
76
91
|
const imports = (0, typechain_1.createImportsForUsedIdentifiers)({
|
|
77
|
-
ethers: ['BigNumber', 'BigNumberish', 'BytesLike'],
|
|
92
|
+
ethers: ['BigNumber', 'BigNumberish', 'CallOverrides', 'BytesLike'],
|
|
78
93
|
'@ethersproject/providers': ['Networkish'],
|
|
79
94
|
'@sentio/sdk': [
|
|
95
|
+
'addContractByABI',
|
|
96
|
+
'getContractByABI',
|
|
97
|
+
'addProcessor',
|
|
98
|
+
'getProcessor',
|
|
80
99
|
'getProvider',
|
|
81
100
|
'transformEtherError',
|
|
82
101
|
'BindOptions',
|
|
@@ -84,8 +103,8 @@ function codeGenSentioFile(contract) {
|
|
|
84
103
|
'BaseProcessorTemplate',
|
|
85
104
|
'Context',
|
|
86
105
|
'ContractWrapper',
|
|
87
|
-
'ContractNamer',
|
|
88
106
|
'DummyProvider',
|
|
107
|
+
'getContractName',
|
|
89
108
|
],
|
|
90
109
|
'./common': ['PromiseOrValue'],
|
|
91
110
|
'./index': [`${contract.name}`, `${contract.name}__factory`],
|
|
@@ -124,9 +143,14 @@ function generateOnEventFunction(event, contractName, includeArgTypes) {
|
|
|
124
143
|
}
|
|
125
144
|
function generateViewFunction(func) {
|
|
126
145
|
return `
|
|
127
|
-
async ${func.name}(${(0, types_1.generateInputTypes)(func.inputs, { useStructs: true })}) {
|
|
146
|
+
async ${func.name}(${(0, types_1.generateInputTypes)(func.inputs, { useStructs: true })}overrides?: CallOverrides) {
|
|
128
147
|
try {
|
|
129
|
-
|
|
148
|
+
if (!overrides) {
|
|
149
|
+
overrides = {
|
|
150
|
+
blockTag: this.context.blockNumber.toNumber(),
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
return await this.contract.${func.name}(${func.inputs.length > 0 ? func.inputs.map((input, index) => input.name || `arg${index}`).join(',') + ',' : ''} overrides)
|
|
130
154
|
} catch (e) {
|
|
131
155
|
throw transformEtherError(e, this.context)
|
|
132
156
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codegen.js","sourceRoot":"","sources":["../../src/target-ethers-sentio/codegen.ts"],"names":[],"mappings":";;;AAAA,yCAMkB;AAElB,2FAAsF;AACtF,mEAA4E;AAC5E,gEAA0E;AAE1E,SAAgB,iBAAiB,CAAC,QAAkB;IAClD,MAAM,MAAM,GAAG;
|
|
1
|
+
{"version":3,"file":"codegen.js","sourceRoot":"","sources":["../../src/target-ethers-sentio/codegen.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.cleanTest = void 0;
|
|
4
|
+
const sdk_1 = require("@sentio/sdk");
|
|
4
5
|
function cleanTest() {
|
|
5
|
-
|
|
6
|
-
globalThis.TemplatesInstances = [];
|
|
7
|
-
globalThis.Templates = [];
|
|
8
|
-
globalThis.SolanaProcessors = [];
|
|
6
|
+
global.PROCESSOR_STATE = new sdk_1.ProcessorState();
|
|
9
7
|
}
|
|
10
8
|
exports.cleanTest = cleanTest;
|
|
11
9
|
//# sourceMappingURL=clean-test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clean-test.js","sourceRoot":"","sources":["../../src/test-case/clean-test.ts"],"names":[],"mappings":";;;AAAA,SAAgB,SAAS;IACvB,
|
|
1
|
+
{"version":3,"file":"clean-test.js","sourceRoot":"","sources":["../../src/test-case/clean-test.ts"],"names":[],"mappings":";;;AAAA,qCAA4C;AAE5C,SAAgB,SAAS;IACvB,MAAM,CAAC,eAAe,GAAG,IAAI,oBAAc,EAAE,CAAA;AAC/C,CAAC;AAFD,8BAEC"}
|
package/dist/test-case/erc20.js
CHANGED
|
@@ -8,7 +8,7 @@ const processorTemplate = new erc20_processor_1.Erc20ProcessorTemplate().onTrans
|
|
|
8
8
|
});
|
|
9
9
|
erc20_processor_1.Erc20Processor.bind({
|
|
10
10
|
address: '0x1e4ede388cbc9f4b5c79681b7f94d36a11abebc9',
|
|
11
|
-
network: 1,
|
|
11
|
+
// network: 1,
|
|
12
12
|
name: 'x2y2',
|
|
13
13
|
startBlock: 14201940,
|
|
14
14
|
})
|
|
@@ -30,6 +30,8 @@ erc20_processor_1.Erc20Processor.bind({ address: '0xA0b86991c6218b36c1d19D4a2e9E
|
|
|
30
30
|
// .startBlock(14201940)
|
|
31
31
|
erc20_processor_1.Erc20Processor.bind({ address: 'xxxx', network: 56 });
|
|
32
32
|
erc20_processor_1.Erc20Processor.bind({ address: 'yyyy', network: 1 });
|
|
33
|
+
erc20_processor_1.Erc20Processor.bind({ address: 'yyyy', network: 1 });
|
|
34
|
+
erc20_processor_1.Erc20Processor.bind({ address: 'yyyy', network: 1, startBlock: 21 });
|
|
33
35
|
// const template = Erc20Processor.template
|
|
34
36
|
// .onTransfer(async function (event, ctx) {
|
|
35
37
|
// ctx.meter.Counter('c2').add(2)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"erc20.js","sourceRoot":"","sources":["../../src/test-case/erc20.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"erc20.js","sourceRoot":"","sources":["../../src/test-case/erc20.ts"],"names":[],"mappings":";;;AAAA,6DAAgF;AAEnE,QAAA,MAAM,GAAG,gCAAc,CAAC,OAAO,CAAC,QAAQ,CACnD,4CAA4C,EAC5C,4CAA4C,CAC7C,CAAA;AAED,MAAM,iBAAiB,GAAG,IAAI,wCAAsB,EAAE,CAAC,UAAU,CAAC,KAAK,WAAW,KAAK,EAAE,GAAG;IAC1F,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;AACjB,CAAC,CAAC,CAAA;AAEF,gCAAc,CAAC,IAAI,CAAC;IAClB,OAAO,EAAE,4CAA4C;IACrD,cAAc;IACd,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,QAAQ;CACrB,CAAC;KACC,UAAU,CAAC,KAAK,WAAW,KAAK,EAAE,GAAG;IACpC,iBAAiB,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,4CAA4C,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;IAC9G,4EAA4E;IAC5E,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;AAChC,CAAC,EAAE,cAAM,CAAC;KACT,OAAO,CAAC,KAAK,WAAW,KAAK,EAAE,GAAG;IACjC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;AAC9C,CAAC,CAAC,CAAA;AAEJ,gCAAc,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,4CAA4C,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;KACtG,UAAU,CAAC,KAAK,WAAW,KAAK,EAAE,GAAG;IACpC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;AAChC,CAAC,EAAE,cAAM,CAAC;KACT,OAAO,CAAC,KAAK,WAAW,KAAK,EAAE,GAAG;IACjC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;AAC9C,CAAC,CAAC,CAAA;AACJ,wBAAwB;AAExB,gCAAc,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAA;AAErD,gCAAc,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAA;AACpD,gCAAc,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAA;AACpD,gCAAc,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAA;AAEpE,2CAA2C;AAC3C,8CAA8C;AAC9C,qCAAqC;AACrC,eAAe;AACf,2CAA2C;AAC3C,mDAAmD;AACnD,OAAO"}
|
|
@@ -43,10 +43,12 @@ describe('Test Server with Example', () => {
|
|
|
43
43
|
});
|
|
44
44
|
it('check configuration', async () => {
|
|
45
45
|
const config = await service.getConfig({}, testContext);
|
|
46
|
-
(0, chai_1.expect)(config.contractConfigs).length(
|
|
46
|
+
(0, chai_1.expect)(config.contractConfigs).length(5);
|
|
47
47
|
// check auto rename
|
|
48
48
|
(0, chai_1.expect)(config.contractConfigs?.[2].contract?.name).equals('Erc20');
|
|
49
49
|
(0, chai_1.expect)(config.contractConfigs?.[3].contract?.name).equals('Erc20_1');
|
|
50
|
+
// same as above because only differ in parameters
|
|
51
|
+
(0, chai_1.expect)(config.contractConfigs?.[4].contract?.name).equals('Erc20_1');
|
|
50
52
|
});
|
|
51
53
|
it('Check block dispatch', async () => {
|
|
52
54
|
const raw = toRaw(blockData);
|
|
@@ -63,6 +65,7 @@ describe('Test Server with Example', () => {
|
|
|
63
65
|
(0, chai_1.expect)((0, numberish_1.MetricValueToNumber)(o11yRes?.gauges?.[0].metricValue)).equals(10n);
|
|
64
66
|
const gauge = o11yRes?.gauges?.[0];
|
|
65
67
|
(0, chai_1.expect)(gauge?.metadata?.blockNumber?.toString()).equals('14373295');
|
|
68
|
+
(0, chai_1.expect)(gauge?.runtimeInfo?.from).equals(__1.HandlerType.BLOCK);
|
|
66
69
|
// Different chainId should be dispatch to other
|
|
67
70
|
const request2 = {
|
|
68
71
|
block: {
|
|
@@ -101,13 +104,14 @@ describe('Test Server with Example', () => {
|
|
|
101
104
|
(0, chai_1.expect)(counters).length(2);
|
|
102
105
|
(0, chai_1.expect)((0, numberish_1.MetricValueToNumber)(counters?.[0].metricValue)).equals(1n);
|
|
103
106
|
(0, chai_1.expect)(counters?.[0].metadata?.chainId).equals('1');
|
|
107
|
+
(0, chai_1.expect)(counters?.[0].runtimeInfo?.from).equals(__1.HandlerType.LOG);
|
|
104
108
|
(0, chai_1.expect)((0, numberish_1.MetricValueToNumber)(counters?.[1].metricValue)).equals(2n);
|
|
105
109
|
(0, chai_1.expect)(counters?.[1].metadata?.chainId).equals('56');
|
|
106
110
|
(0, chai_1.expect)(res.result?.gauges).length(0);
|
|
107
111
|
(0, chai_1.expect)(res.configUpdated).equals(true);
|
|
108
112
|
const config = await service.getConfig({}, testContext);
|
|
109
|
-
(0, chai_1.expect)(config.contractConfigs).length(
|
|
110
|
-
(0, chai_1.expect)(config.contractConfigs?.[
|
|
113
|
+
(0, chai_1.expect)(config.contractConfigs).length(6); //config increased
|
|
114
|
+
(0, chai_1.expect)(config.contractConfigs?.[5].contract?.name).equals('dynamic');
|
|
111
115
|
// repeat trigger won't bind again
|
|
112
116
|
await service.processLog(request, testContext);
|
|
113
117
|
const config2 = await service.getConfig({}, testContext);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"erc20.test.js","sourceRoot":"","sources":["../../src/test-case/erc20.test.ts"],"names":[],"mappings":";AAAA,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;AAEhC,+
|
|
1
|
+
{"version":3,"file":"erc20.test.js","sourceRoot":"","sources":["../../src/test-case/erc20.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mirrorworld.js","sourceRoot":"","sources":["../../src/test-case/mirrorworld.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"mirrorworld.js","sourceRoot":"","sources":["../../src/test-case/mirrorworld.ts"],"names":[],"mappings":"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"}
|
|
@@ -52,6 +52,7 @@ describe('Test Server with Solana Example', () => {
|
|
|
52
52
|
(0, chai_1.expect)(res.result?.gauges).length(0);
|
|
53
53
|
(0, chai_1.expect)(res.result?.counters[0].metadata?.blockNumber.toInt()).equal(0);
|
|
54
54
|
(0, chai_1.expect)((0, numberish_1.MetricValueToNumber)(res.result?.counters[0].metricValue)).equal(1000000);
|
|
55
|
+
(0, chai_1.expect)(res.result?.counters[0].runtimeInfo?.from).equals(__1.HandlerType.INSTRUCTION);
|
|
55
56
|
});
|
|
56
57
|
});
|
|
57
58
|
//# sourceMappingURL=solana.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"solana.test.js","sourceRoot":"","sources":["../../src/test-case/solana.test.ts"],"names":[],"mappings":";AAAA,gCAAgC;;;;;AAEhC,+BAA6B;AAE7B,
|
|
1
|
+
{"version":3,"file":"solana.test.js","sourceRoot":"","sources":["../../src/test-case/solana.test.ts"],"names":[],"mappings":";AAAA,gCAAgC;;;;;AAEhC,+BAA6B;AAE7B,0BAAiF;AAGjF,gDAAuB;AACvB,6CAAwC;AACxC,4CAAkD;AAElD,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAC/C,MAAM,OAAO,GAAG,IAAI,wBAAoB,CAAC,SAAS,CAAC,CAAA;IACnD,MAAM,WAAW,GAA6B,EAAE,CAAA;IAEhD,MAAM,CAAC,KAAK,IAAI,EAAE;QAChB,IAAA,sBAAS,GAAE,CAAA;QAEX,OAAO,CAAC,eAAe,CAAC,CAAA;QACxB,OAAO,CAAC,yBAAyB,CAAC,CAAA;QAClC,MAAM,OAAO,CAAC,KAAK,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE,EAAE,WAAW,CAAC,CAAA;IAC7D,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;QACpC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,WAAW,CAAC,CAAA;QACvD,IAAA,aAAM,EAAC,MAAM,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IAC1C,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACtD,MAAM,OAAO,GAA8B;YACzC,YAAY,EAAE;gBACZ;oBACE,eAAe,EAAE,0CAA0C;oBAC3D,IAAI,EAAE,cAAI,CAAC,UAAU,CAAC,CAAC,CAAC;oBACxB,gBAAgB,EAAE,8CAA8C;iBACjE;aACF;SACF,CAAA;QACD,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;QAClE,IAAA,aAAM,EAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QACtC,IAAA,aAAM,EAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QACpC,IAAA,aAAM,EAAC,IAAA,+BAAmB,EAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;IACrF,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;QAChE,MAAM,OAAO,GAA8B;YACzC,YAAY,EAAE;gBACZ;oBACE,eAAe,EAAE,6EAA6E;oBAC9F,IAAI,EAAE,cAAI,CAAC,UAAU,CAAC,CAAC,CAAC;oBACxB,gBAAgB,EAAE,6CAA6C;iBAChE;aACF;SACF,CAAA;QACD,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;QAClE,IAAA,aAAM,EAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QACtC,IAAA,aAAM,EAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QACpC,IAAA,aAAM,EAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QACtE,IAAA,aAAM,EAAC,IAAA,+BAAmB,EAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAC/E,IAAA,aAAM,EAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,eAAW,CAAC,WAAW,CAAC,CAAA;IACnF,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
|
+
import { CallOverrides } from "ethers";
|
|
2
|
+
import { Networkish } from "@ethersproject/providers";
|
|
1
3
|
import { BindOptions, BaseProcessor, BaseProcessorTemplate, Context, ContractWrapper } from "@sentio/sdk";
|
|
2
4
|
import { PromiseOrValue } from "./common";
|
|
3
5
|
import { Erc20 } from "./index";
|
|
4
6
|
import { ApprovalEvent, ApprovalEventFilter, TransferEvent, TransferEventFilter } from "./Erc20";
|
|
5
7
|
declare class Erc20ContractWrapper extends ContractWrapper<Erc20> {
|
|
6
8
|
constructor(contract: Erc20);
|
|
7
|
-
allowance(owner: PromiseOrValue<string>, spender: PromiseOrValue<string
|
|
8
|
-
balanceOf(account: PromiseOrValue<string
|
|
9
|
-
decimals(): Promise<number>;
|
|
10
|
-
totalSupply(): Promise<import("ethers").BigNumber>;
|
|
9
|
+
allowance(owner: PromiseOrValue<string>, spender: PromiseOrValue<string>, overrides?: CallOverrides): Promise<import("ethers").BigNumber>;
|
|
10
|
+
balanceOf(account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<import("ethers").BigNumber>;
|
|
11
|
+
decimals(overrides?: CallOverrides): Promise<number>;
|
|
12
|
+
totalSupply(overrides?: CallOverrides): Promise<import("ethers").BigNumber>;
|
|
11
13
|
}
|
|
12
14
|
export declare type Erc20Context = Context<Erc20, Erc20ContractWrapper>;
|
|
13
15
|
export declare class Erc20ProcessorTemplate extends BaseProcessorTemplate<Erc20, Erc20ContractWrapper> {
|
|
@@ -26,4 +28,5 @@ export declare class Erc20Processor extends BaseProcessor<Erc20, Erc20ContractWr
|
|
|
26
28
|
};
|
|
27
29
|
static bind(options: BindOptions): Erc20Processor;
|
|
28
30
|
}
|
|
31
|
+
export declare function getErc20Contract(address: string, network?: Networkish): Erc20ContractWrapper;
|
|
29
32
|
export {};
|
|
@@ -1,52 +1,60 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
/* Autogenerated file. Do not edit manually. */
|
|
3
|
-
/* tslint:disable */
|
|
4
|
-
/* eslint-disable */
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.Erc20Processor = exports.Erc20ProcessorTemplate = void 0;
|
|
3
|
+
exports.getErc20Contract = exports.Erc20Processor = exports.Erc20ProcessorTemplate = void 0;
|
|
7
4
|
const sdk_1 = require("@sentio/sdk");
|
|
8
5
|
const index_1 = require("./index");
|
|
9
|
-
const namer = new sdk_1.ContractNamer("Erc20");
|
|
10
6
|
const templateContract = index_1.Erc20__factory.connect("", sdk_1.DummyProvider);
|
|
11
7
|
class Erc20ContractWrapper extends sdk_1.ContractWrapper {
|
|
12
8
|
constructor(contract) {
|
|
13
9
|
super(contract);
|
|
14
10
|
}
|
|
15
|
-
async allowance(owner, spender) {
|
|
11
|
+
async allowance(owner, spender, overrides) {
|
|
16
12
|
try {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
13
|
+
if (!overrides) {
|
|
14
|
+
overrides = {
|
|
15
|
+
blockTag: this.context.blockNumber.toNumber(),
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
return await this.contract.allowance(owner, spender, overrides);
|
|
20
19
|
}
|
|
21
20
|
catch (e) {
|
|
22
21
|
throw (0, sdk_1.transformEtherError)(e, this.context);
|
|
23
22
|
}
|
|
24
23
|
}
|
|
25
|
-
async balanceOf(account) {
|
|
24
|
+
async balanceOf(account, overrides) {
|
|
26
25
|
try {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
26
|
+
if (!overrides) {
|
|
27
|
+
overrides = {
|
|
28
|
+
blockTag: this.context.blockNumber.toNumber(),
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
return await this.contract.balanceOf(account, overrides);
|
|
30
32
|
}
|
|
31
33
|
catch (e) {
|
|
32
34
|
throw (0, sdk_1.transformEtherError)(e, this.context);
|
|
33
35
|
}
|
|
34
36
|
}
|
|
35
|
-
async decimals() {
|
|
37
|
+
async decimals(overrides) {
|
|
36
38
|
try {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
39
|
+
if (!overrides) {
|
|
40
|
+
overrides = {
|
|
41
|
+
blockTag: this.context.blockNumber.toNumber(),
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
return await this.contract.decimals(overrides);
|
|
40
45
|
}
|
|
41
46
|
catch (e) {
|
|
42
47
|
throw (0, sdk_1.transformEtherError)(e, this.context);
|
|
43
48
|
}
|
|
44
49
|
}
|
|
45
|
-
async totalSupply() {
|
|
50
|
+
async totalSupply(overrides) {
|
|
46
51
|
try {
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
52
|
+
if (!overrides) {
|
|
53
|
+
overrides = {
|
|
54
|
+
blockTag: this.context.blockNumber.toNumber(),
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
return await this.contract.totalSupply(overrides);
|
|
50
58
|
}
|
|
51
59
|
catch (e) {
|
|
52
60
|
throw (0, sdk_1.transformEtherError)(e, this.context);
|
|
@@ -55,12 +63,15 @@ class Erc20ContractWrapper extends sdk_1.ContractWrapper {
|
|
|
55
63
|
}
|
|
56
64
|
class Erc20ProcessorTemplate extends sdk_1.BaseProcessorTemplate {
|
|
57
65
|
bindInternal(options) {
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
66
|
+
let processor = (0, sdk_1.getProcessor)("Erc20", options);
|
|
67
|
+
if (!processor) {
|
|
68
|
+
const wrapper = getErc20Contract(options.address, options.network);
|
|
69
|
+
const finalOptions = Object.assign({}, options);
|
|
70
|
+
finalOptions.name = (0, sdk_1.getContractName)("Erc20", options.name, options.address, options.network);
|
|
71
|
+
processor = new Erc20Processor(finalOptions, wrapper);
|
|
72
|
+
(0, sdk_1.addProcessor)("Erc20", options, processor);
|
|
62
73
|
}
|
|
63
|
-
return
|
|
74
|
+
return processor;
|
|
64
75
|
}
|
|
65
76
|
onApproval(handler, filter) {
|
|
66
77
|
if (!filter) {
|
|
@@ -91,14 +102,27 @@ class Erc20Processor extends sdk_1.BaseProcessor {
|
|
|
91
102
|
}
|
|
92
103
|
static filters = templateContract.filters;
|
|
93
104
|
static bind(options) {
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
105
|
+
let processor = (0, sdk_1.getProcessor)("Erc20", options);
|
|
106
|
+
if (!processor) {
|
|
107
|
+
const wrapper = getErc20Contract(options.address, options.network);
|
|
108
|
+
const finalOptions = Object.assign({}, options);
|
|
109
|
+
finalOptions.name = (0, sdk_1.getContractName)("Erc20", options.name, options.address, options.network);
|
|
110
|
+
processor = new Erc20Processor(finalOptions, wrapper);
|
|
111
|
+
(0, sdk_1.addProcessor)("Erc20", options, processor);
|
|
98
112
|
}
|
|
99
|
-
return
|
|
113
|
+
return processor;
|
|
100
114
|
}
|
|
101
115
|
}
|
|
102
116
|
exports.Erc20Processor = Erc20Processor;
|
|
117
|
+
function getErc20Contract(address, network = 1) {
|
|
118
|
+
let contract = (0, sdk_1.getContractByABI)("Erc20", address, network);
|
|
119
|
+
if (!contract) {
|
|
120
|
+
const rawContract = index_1.Erc20__factory.connect(address, (0, sdk_1.getProvider)(network));
|
|
121
|
+
contract = new Erc20ContractWrapper(rawContract);
|
|
122
|
+
(0, sdk_1.addContractByABI)("Erc20", address, network, contract);
|
|
123
|
+
}
|
|
124
|
+
return contract;
|
|
125
|
+
}
|
|
126
|
+
exports.getErc20Contract = getErc20Contract;
|
|
103
127
|
// export const Erc20Processor = new Erc20ProcessorTemplate("Erc20")
|
|
104
128
|
//# sourceMappingURL=erc20_processor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"erc20_processor.js","sourceRoot":"","sources":["../../../src/test-case/types/erc20_processor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"erc20_processor.js","sourceRoot":"","sources":["../../../src/test-case/types/erc20_processor.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import { Instruction, BN } from '@project-serum/anchor';
|
|
|
3
3
|
import { SolanaBaseProcessor, SolanaContext } from "@sentio/sdk";
|
|
4
4
|
export declare class GameWalletProcessor extends SolanaBaseProcessor {
|
|
5
5
|
static bind(address: string, endpoint: string, name?: string): GameWalletProcessor;
|
|
6
|
-
decodeInstruction(
|
|
6
|
+
decodeInstruction: (rawInstruction: string) => Instruction | null;
|
|
7
7
|
onInitializeTokenConfig(handler: (args: {
|
|
8
8
|
tokenDecimal: number;
|
|
9
9
|
isPaused: boolean;
|
|
@@ -12,11 +12,11 @@ class GameWalletProcessor extends sdk_1.SolanaBaseProcessor {
|
|
|
12
12
|
static bind(address, endpoint, name = 'GameWallet') {
|
|
13
13
|
return new GameWalletProcessor(name, address, endpoint);
|
|
14
14
|
}
|
|
15
|
-
decodeInstruction(
|
|
15
|
+
decodeInstruction = (rawInstruction) => {
|
|
16
16
|
const instructionCoder = new anchor_1.BorshInstructionCoder(game_wallet_1.game_wallet_idl);
|
|
17
|
-
const decodedIns = instructionCoder.decode(Buffer.from(bs58_1.default.decode(
|
|
17
|
+
const decodedIns = instructionCoder.decode(Buffer.from(bs58_1.default.decode(rawInstruction)));
|
|
18
18
|
return decodedIns;
|
|
19
|
-
}
|
|
19
|
+
};
|
|
20
20
|
onInitializeTokenConfig(handler) {
|
|
21
21
|
this.onInstruction('initializeTokenConfig', (ins, ctx) => {
|
|
22
22
|
if (ins) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"game_wallet_processor.js","sourceRoot":"","sources":["../../../src/test-case/types/game_wallet_processor.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAmF;AACnF,qCAAgE;AAChE,+CAA+C;AAC/C,gDAAuB;AAGvB,MAAa,mBAAoB,SAAQ,yBAAmB;IAC1D,MAAM,CAAC,IAAI,CAAC,OAAe,EAAE,QAAgB,EAAE,IAAI,GAAG,YAAY;QAChE,OAAO,IAAI,mBAAmB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;IACzD,CAAC;
|
|
1
|
+
{"version":3,"file":"game_wallet_processor.js","sourceRoot":"","sources":["../../../src/test-case/types/game_wallet_processor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { Instruction } from '@project-serum/anchor';
|
|
2
|
-
import { SolanaBaseProcessor, SolanaContext } from
|
|
2
|
+
import { SolanaBaseProcessor, SolanaContext } from '@sentio/sdk';
|
|
3
3
|
export declare class TokenBridgeProcessor extends SolanaBaseProcessor {
|
|
4
|
-
static bind(address: string, endpoint: string, name?: string): TokenBridgeProcessor;
|
|
5
4
|
private readonly transferDataValues;
|
|
6
5
|
private readonly transferDataWithPayloadValues;
|
|
7
6
|
private readonly attestTokenValues;
|
|
8
7
|
private readonly initializeDataValues;
|
|
9
|
-
|
|
8
|
+
static bind(address: string, endpoint: string, name?: string): TokenBridgeProcessor;
|
|
9
|
+
decodeInstruction: (rawInstruction: string) => Instruction | null;
|
|
10
10
|
onInitialize(handler: (args: any, ctx: SolanaContext) => void): TokenBridgeProcessor;
|
|
11
11
|
onAttestToken(handler: (args: any, ctx: SolanaContext) => void): TokenBridgeProcessor;
|
|
12
12
|
onTransferWrapped(handler: (args: any, ctx: SolanaContext) => void): TokenBridgeProcessor;
|
|
@@ -48,15 +48,12 @@ var TokenBrigeInstruction;
|
|
|
48
48
|
TokenBrigeInstruction[TokenBrigeInstruction["TransferNativeWithPayload"] = 12] = "TransferNativeWithPayload";
|
|
49
49
|
})(TokenBrigeInstruction || (TokenBrigeInstruction = {}));
|
|
50
50
|
class TokenBridgeProcessor extends sdk_1.SolanaBaseProcessor {
|
|
51
|
-
static bind(address, endpoint, name = 'Wormhole') {
|
|
52
|
-
return new TokenBridgeProcessor(name, address, endpoint);
|
|
53
|
-
}
|
|
54
51
|
transferDataValues = [
|
|
55
52
|
borsh.u32('nonce'),
|
|
56
53
|
borsh.u64('amount'),
|
|
57
54
|
borsh.u64('fee'),
|
|
58
55
|
borsh.array(borsh.u8(undefined), 32, 'target_address'),
|
|
59
|
-
borsh.u16('target_chain')
|
|
56
|
+
borsh.u16('target_chain')
|
|
60
57
|
];
|
|
61
58
|
// https://github.com/certusone/wormhole/blob/8818d4b8f0471095dd48fa6f5da9c315cbfc9b52/solana/modules/token_bridge/program/src/api/transfer_payload.rs#L170
|
|
62
59
|
transferDataWithPayloadValues = [
|
|
@@ -68,12 +65,15 @@ class TokenBridgeProcessor extends sdk_1.SolanaBaseProcessor {
|
|
|
68
65
|
borsh.option(borsh.publicKey(undefined), 'cpi_program_id')
|
|
69
66
|
];
|
|
70
67
|
attestTokenValues = [
|
|
71
|
-
borsh.u32('nonce')
|
|
68
|
+
borsh.u32('nonce')
|
|
72
69
|
];
|
|
73
70
|
initializeDataValues = [
|
|
74
|
-
borsh.publicKey('bridge')
|
|
71
|
+
borsh.publicKey('bridge')
|
|
75
72
|
];
|
|
76
|
-
|
|
73
|
+
static bind(address, endpoint, name = 'Wormhole') {
|
|
74
|
+
return new TokenBridgeProcessor(name, address, endpoint);
|
|
75
|
+
}
|
|
76
|
+
decodeInstruction = (ins) => {
|
|
77
77
|
const u8Arr = bs58_1.default.decode(ins);
|
|
78
78
|
if (u8Arr.length === 0) {
|
|
79
79
|
return null;
|
|
@@ -138,7 +138,7 @@ class TokenBridgeProcessor extends sdk_1.SolanaBaseProcessor {
|
|
|
138
138
|
default:
|
|
139
139
|
return null;
|
|
140
140
|
}
|
|
141
|
-
}
|
|
141
|
+
};
|
|
142
142
|
onInitialize(handler) {
|
|
143
143
|
this.onInstruction('Initialize', (ins, ctx) => {
|
|
144
144
|
if (ins) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wormhole_processor.js","sourceRoot":"","sources":["../../../src/test-case/types/wormhole_processor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,
|
|
1
|
+
{"version":3,"file":"wormhole_processor.js","sourceRoot":"","sources":["../../../src/test-case/types/wormhole_processor.ts"],"names":[],"mappings":"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"}
|