@sentio/sdk 0.3.11 → 0.3.12
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/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 +15 -1
- package/dist/gen/processor/protos/processor.js +109 -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 +9 -6
- package/dist/meter.js.map +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 +51 -52
- 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 +5 -3
- package/dist/test-case/erc20.test.js.map +1 -1
- package/dist/test-case/mirrorworld.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
|
@@ -8,10 +8,9 @@ class SPLTokenProcessor extends solana_processor_1.SolanaBaseProcessor {
|
|
|
8
8
|
static bind(address, endpoint, name = 'Token Program') {
|
|
9
9
|
return new SPLTokenProcessor(name, address, endpoint);
|
|
10
10
|
}
|
|
11
|
-
fromParsedInstruction(instruction) {
|
|
11
|
+
fromParsedInstruction = (instruction) => {
|
|
12
12
|
const instructionType = instruction.parsed.type;
|
|
13
|
-
if (!instructionType ||
|
|
14
|
-
!this.instructionTypeToTokenInstruction(instructionType)) {
|
|
13
|
+
if (!instructionType || !this.instructionTypeToTokenInstruction(instructionType)) {
|
|
15
14
|
return null;
|
|
16
15
|
}
|
|
17
16
|
return {
|
|
@@ -21,21 +20,7 @@ class SPLTokenProcessor extends solana_processor_1.SolanaBaseProcessor {
|
|
|
21
20
|
...instruction.parsed.info,
|
|
22
21
|
},
|
|
23
22
|
};
|
|
24
|
-
}
|
|
25
|
-
instructionTypeToTokenInstruction(type) {
|
|
26
|
-
const findTokenInstruction = () => {
|
|
27
|
-
const camelCaseType = type[0].toLowerCase() + type.substring(1);
|
|
28
|
-
const index = Object.keys(spl_token_1.TokenInstruction).indexOf(camelCaseType);
|
|
29
|
-
if (index !== -1) {
|
|
30
|
-
return Object.values(spl_token_1.TokenInstruction)[index];
|
|
31
|
-
}
|
|
32
|
-
return undefined;
|
|
33
|
-
};
|
|
34
|
-
if (!this.TokenInstructionMapCache.has(type)) {
|
|
35
|
-
this.TokenInstructionMapCache.set(type, findTokenInstruction());
|
|
36
|
-
}
|
|
37
|
-
return this.TokenInstructionMapCache.get(type);
|
|
38
|
-
}
|
|
23
|
+
};
|
|
39
24
|
onInitializeMint(handler) {
|
|
40
25
|
this.onInstruction('initializeMint', (ins, ctx) => {
|
|
41
26
|
if (ins) {
|
|
@@ -148,6 +133,20 @@ class SPLTokenProcessor extends solana_processor_1.SolanaBaseProcessor {
|
|
|
148
133
|
});
|
|
149
134
|
return this;
|
|
150
135
|
}
|
|
136
|
+
instructionTypeToTokenInstruction(type) {
|
|
137
|
+
const findTokenInstruction = () => {
|
|
138
|
+
const camelCaseType = type[0].toLowerCase() + type.substring(1);
|
|
139
|
+
const index = Object.keys(spl_token_1.TokenInstruction).indexOf(camelCaseType);
|
|
140
|
+
if (index !== -1) {
|
|
141
|
+
return Object.values(spl_token_1.TokenInstruction)[index];
|
|
142
|
+
}
|
|
143
|
+
return undefined;
|
|
144
|
+
};
|
|
145
|
+
if (!this.TokenInstructionMapCache.has(type)) {
|
|
146
|
+
this.TokenInstructionMapCache.set(type, findTokenInstruction());
|
|
147
|
+
}
|
|
148
|
+
return this.TokenInstructionMapCache.get(type);
|
|
149
|
+
}
|
|
151
150
|
}
|
|
152
151
|
exports.SPLTokenProcessor = SPLTokenProcessor;
|
|
153
152
|
//# sourceMappingURL=spl-token-processor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spl-token-processor.js","sourceRoot":"","sources":["../../../src/solana/builtin/spl-token-processor.ts"],"names":[],"mappings":";;;AAAA,uDAAsD;AAEtD,iDAe0B;AAI1B,MAAa,iBAAkB,SAAQ,sCAAmB;IAChD,wBAAwB,
|
|
1
|
+
{"version":3,"file":"spl-token-processor.js","sourceRoot":"","sources":["../../../src/solana/builtin/spl-token-processor.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,18 +8,19 @@ declare type IndexConfigure = {
|
|
|
8
8
|
endSlot?: Long;
|
|
9
9
|
};
|
|
10
10
|
export declare class SolanaBaseProcessor {
|
|
11
|
-
instructionHanlderMap: Map<string, (instruction: Instruction) =>
|
|
11
|
+
instructionHanlderMap: Map<string, (instruction: Instruction, ctx: SolanaContext) => void>;
|
|
12
12
|
address: string;
|
|
13
13
|
endpoint: string;
|
|
14
14
|
connection: Connection;
|
|
15
15
|
contractName: string;
|
|
16
16
|
processInnerInstruction: boolean;
|
|
17
17
|
config: IndexConfigure;
|
|
18
|
+
decodeInstruction: (rawInstruction: string) => Instruction | null;
|
|
19
|
+
fromParsedInstruction: (instruction: ParsedInstruction) => Instruction | null;
|
|
18
20
|
constructor(contractName: string, address: string, endpoint: string, processInnerInstruction?: boolean);
|
|
19
21
|
bind(address: string): void;
|
|
20
|
-
decodeInstruction(rawInstruction: string): Instruction | null;
|
|
21
|
-
fromParsedInstruction(instruction: ParsedInstruction): Instruction | null;
|
|
22
22
|
onInstruction(instructionName: string, handler: (instruction: Instruction, ctx: SolanaContext) => void): this;
|
|
23
|
+
handleInstruction(ins: string | ParsedInstruction): O11yResult;
|
|
23
24
|
isBind(): boolean;
|
|
24
25
|
startSlot(startSlot: Long | number): this;
|
|
25
26
|
endBlock(endBlock: Long | number): this;
|
package/dist/solana-processor.js
CHANGED
|
@@ -15,13 +15,12 @@ class SolanaBaseProcessor {
|
|
|
15
15
|
contractName;
|
|
16
16
|
processInnerInstruction;
|
|
17
17
|
config = { startSlot: new long_1.default(0) };
|
|
18
|
+
decodeInstruction;
|
|
19
|
+
fromParsedInstruction;
|
|
18
20
|
constructor(contractName, address, endpoint, processInnerInstruction = false) {
|
|
19
21
|
this.endpoint = endpoint;
|
|
20
22
|
this.address = address;
|
|
21
|
-
|
|
22
|
-
globalThis.SolanaProcessors = [];
|
|
23
|
-
}
|
|
24
|
-
globalThis.SolanaProcessors.push(this);
|
|
23
|
+
global.PROCESSOR_STATE.solanaProcessors.push(this);
|
|
25
24
|
this.connection = new web3_js_1.Connection(endpoint, 'confirmed');
|
|
26
25
|
this.contractName = contractName;
|
|
27
26
|
this.processInnerInstruction = processInnerInstruction;
|
|
@@ -29,29 +28,35 @@ class SolanaBaseProcessor {
|
|
|
29
28
|
bind(address) {
|
|
30
29
|
this.address = address;
|
|
31
30
|
}
|
|
32
|
-
decodeInstruction(rawInstruction) {
|
|
33
|
-
throw new Error('decodeInstruction is not implemented.');
|
|
34
|
-
}
|
|
35
|
-
fromParsedInstruction(instruction) {
|
|
36
|
-
throw new Error('fromParsedInstruction is not implemented.');
|
|
37
|
-
}
|
|
38
31
|
onInstruction(instructionName, handler) {
|
|
39
32
|
if (!this.isBind()) {
|
|
40
33
|
throw new Error("Processor doesn't bind to an address");
|
|
41
34
|
}
|
|
42
|
-
this.instructionHanlderMap.set(instructionName,
|
|
43
|
-
const ctx = new context_1.SolanaContext(this.address);
|
|
44
|
-
// const parsedTransaction = await this.connection.getParsedTransaction(ins)
|
|
45
|
-
if (ins) {
|
|
46
|
-
await handler(ins, ctx);
|
|
47
|
-
}
|
|
48
|
-
return {
|
|
49
|
-
gauges: ctx.gauges,
|
|
50
|
-
counters: ctx.counters,
|
|
51
|
-
};
|
|
52
|
-
});
|
|
35
|
+
this.instructionHanlderMap.set(instructionName, handler);
|
|
53
36
|
return this;
|
|
54
37
|
}
|
|
38
|
+
handleInstruction(ins) {
|
|
39
|
+
const ctx = new context_1.SolanaContext(this.address);
|
|
40
|
+
let parsedInstruction = null;
|
|
41
|
+
if (ins) {
|
|
42
|
+
if (ins.parsed) {
|
|
43
|
+
parsedInstruction = this.fromParsedInstruction(ins);
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
parsedInstruction = this.decodeInstruction(ins);
|
|
47
|
+
}
|
|
48
|
+
if (parsedInstruction) {
|
|
49
|
+
const handler = this.instructionHanlderMap.get(parsedInstruction.name);
|
|
50
|
+
if (handler) {
|
|
51
|
+
handler(parsedInstruction, ctx);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return {
|
|
56
|
+
gauges: ctx.gauges,
|
|
57
|
+
counters: ctx.counters,
|
|
58
|
+
};
|
|
59
|
+
}
|
|
55
60
|
isBind() {
|
|
56
61
|
return this.address !== null;
|
|
57
62
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"solana-processor.js","sourceRoot":"","sources":["../src/solana-processor.ts"],"names":[],"mappings":";;;;;;AACA,uCAAyC;AACzC,6CAA+D;AAC/D,gDAAuB;AAQvB,MAAa,mBAAmB;IACvB,qBAAqB,
|
|
1
|
+
{"version":3,"file":"solana-processor.js","sourceRoot":"","sources":["../src/solana-processor.ts"],"names":[],"mappings":";;;;;;AACA,uCAAyC;AACzC,6CAA+D;AAC/D,gDAAuB;AAQvB,MAAa,mBAAmB;IACvB,qBAAqB,GAAwE,IAAI,GAAG,EAAE,CAAA;IAC7G,OAAO,CAAQ;IACf,QAAQ,CAAQ;IAChB,UAAU,CAAY;IACtB,YAAY,CAAQ;IACpB,uBAAuB,CAAS;IAChC,MAAM,GAAmB,EAAE,SAAS,EAAE,IAAI,cAAI,CAAC,CAAC,CAAC,EAAE,CAAA;IACnD,iBAAiB,CAAgD;IACjE,qBAAqB,CAAwD;IAE7E,YAAY,YAAoB,EAAE,OAAe,EAAE,QAAgB,EAAE,uBAAuB,GAAG,KAAK;QAClG,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,MAAM,CAAC,eAAe,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAClD,IAAI,CAAC,UAAU,GAAG,IAAI,oBAAU,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;QACvD,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;QAChC,IAAI,CAAC,uBAAuB,GAAG,uBAAuB,CAAA;IACxD,CAAC;IAED,IAAI,CAAC,OAAe;QAClB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;IAEM,aAAa,CAAC,eAAuB,EAAE,OAA+D;QAC3G,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE;YAClB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;SACxD;QAED,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,CAAA;QAExD,OAAO,IAAI,CAAA;IACb,CAAC;IAEM,iBAAiB,CAAC,GAA+B;QACtD,MAAM,GAAG,GAAG,IAAI,uBAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC3C,IAAI,iBAAiB,GAAuB,IAAI,CAAA;QAEhD,IAAI,GAAG,EAAE;YACP,IAAK,GAAyB,CAAC,MAAM,EAAE;gBACrC,iBAAiB,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAwB,CAAC,CAAA;aACzE;iBAAM;gBACL,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAa,CAAC,CAAA;aAC1D;YACD,IAAI,iBAAiB,EAAE;gBACrB,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAA;gBACtE,IAAI,OAAO,EAAE;oBACX,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAA;iBAChC;aACF;SACF;QACD,OAAO;YACL,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB,CAAA;IACH,CAAC;IAEM,MAAM;QACX,OAAO,IAAI,CAAC,OAAO,KAAK,IAAI,CAAA;IAC9B,CAAC;IAEM,SAAS,CAAC,SAAwB;QACvC,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;YACjC,SAAS,GAAG,cAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;SACvC;QACD,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,SAAS,CAAA;QACjC,OAAO,IAAI,CAAA;IACb,CAAC;IAEM,QAAQ,CAAC,QAAuB;QACrC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;YAChC,QAAQ,GAAG,cAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;SACrC;QACD,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,QAAQ,CAAA;QAC9B,OAAO,IAAI,CAAA;IACb,CAAC;CACF;AA5ED,kDA4EC"}
|
|
@@ -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);
|
|
@@ -106,8 +108,8 @@ describe('Test Server with Example', () => {
|
|
|
106
108
|
(0, chai_1.expect)(res.result?.gauges).length(0);
|
|
107
109
|
(0, chai_1.expect)(res.configUpdated).equals(true);
|
|
108
110
|
const config = await service.getConfig({}, testContext);
|
|
109
|
-
(0, chai_1.expect)(config.contractConfigs).length(
|
|
110
|
-
(0, chai_1.expect)(config.contractConfigs?.[
|
|
111
|
+
(0, chai_1.expect)(config.contractConfigs).length(6); //config increased
|
|
112
|
+
(0, chai_1.expect)(config.contractConfigs?.[5].contract?.name).equals('dynamic');
|
|
111
113
|
// repeat trigger won't bind again
|
|
112
114
|
await service.processLog(request, testContext);
|
|
113
115
|
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":";;AAAA,yEAAmE;AAEnE,2CAAmB,CAAC,IAAI,CAAC,8CAA8C,EAAE,qCAAqC,CAAC;KAC5G,uBAAuB,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE;IACxC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAA;IACxC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IACzD,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IAC3D,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AAChE,CAAC,CAAC;KACD,SAAS,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE;IAC1B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAA;IACxC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IACzD,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AAC7D,CAAC,CAAC;KACD,UAAU,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE;IAC3B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAA;IACxC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IACzD,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AAChE,CAAC,CAAC;KACD,OAAO,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE;IACxB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAA;IACxC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IACzD,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AAChE,CAAC,CAAC;KACD,YAAY,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE;IAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAA;IACxC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IACzD,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IAC3D,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AAChE,CAAC,CAAC;KACD,kBAAkB,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE;IACnC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAA;IACxC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IACzD,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AAC7D,CAAC,CAAC;KACD,qBAAqB,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE;IACtC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAA;IACxC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AAChE,CAAC,CAAC;KACD,SAAS,CAAC,SAAS,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;
|