@sentio/sdk 2.15.6-rc.1 → 2.15.6-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/eth/builtin/internal/eacaggregatorproxy-processor.d.ts +2 -1
- package/lib/eth/builtin/internal/eacaggregatorproxy-processor.js +81 -114
- package/lib/eth/builtin/internal/eacaggregatorproxy-processor.js.map +1 -1
- package/lib/eth/builtin/internal/erc1155-processor.d.ts +2 -1
- package/lib/eth/builtin/internal/erc1155-processor.js +29 -36
- package/lib/eth/builtin/internal/erc1155-processor.js.map +1 -1
- package/lib/eth/builtin/internal/erc20-processor.d.ts +2 -1
- package/lib/eth/builtin/internal/erc20-processor.js +41 -54
- package/lib/eth/builtin/internal/erc20-processor.js.map +1 -1
- package/lib/eth/builtin/internal/erc20bytes-processor.d.ts +2 -1
- package/lib/eth/builtin/internal/erc20bytes-processor.js +33 -42
- package/lib/eth/builtin/internal/erc20bytes-processor.js.map +1 -1
- package/lib/eth/builtin/internal/erc721-processor.d.ts +2 -1
- package/lib/eth/builtin/internal/erc721-processor.js +45 -60
- package/lib/eth/builtin/internal/erc721-processor.js.map +1 -1
- package/lib/eth/builtin/internal/weth9-processor.d.ts +2 -1
- package/lib/eth/builtin/internal/weth9-processor.js +33 -42
- package/lib/eth/builtin/internal/weth9-processor.js.map +1 -1
- package/lib/eth/codegen/file.js +10 -7
- package/lib/eth/codegen/file.js.map +1 -1
- package/lib/eth/codegen/view-function.js +4 -6
- package/lib/eth/codegen/view-function.js.map +1 -1
- package/lib/eth/index.d.ts +1 -1
- package/lib/eth/index.js +1 -1
- package/lib/eth/index.js.map +1 -1
- package/lib/eth/provider.d.ts +0 -2
- package/lib/eth/provider.js +9 -10
- package/lib/eth/provider.js.map +1 -1
- package/lib/eth/provider.test.js.map +1 -1
- package/lib/utils/token.js +9 -2
- package/lib/utils/token.js.map +1 -1
- package/package.json +3 -3
- package/src/eth/builtin/internal/eacaggregatorproxy-processor.ts +84 -114
- package/src/eth/builtin/internal/erc1155-processor.ts +32 -36
- package/src/eth/builtin/internal/erc20-processor.ts +44 -54
- package/src/eth/builtin/internal/erc20bytes-processor.ts +36 -42
- package/src/eth/builtin/internal/erc721-processor.ts +48 -60
- package/src/eth/builtin/internal/weth9-processor.ts +36 -42
- package/src/eth/codegen/file.ts +10 -9
- package/src/eth/codegen/view-function.ts +4 -6
- package/src/eth/index.ts +1 -1
- package/src/eth/provider.ts +9 -11
- package/src/utils/token.ts +9 -2
@@ -50,12 +50,10 @@ export function generateBoundViewFunction(fn, includeArgTypes) {
|
|
50
50
|
async ${declName ?? fn.name}(${generateInputTypes(fn.inputs, {
|
51
51
|
useStructs: true,
|
52
52
|
})}overrides?: Overrides): ${generateReturnTypes(fn)} {
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
}
|
58
|
-
return await this.view.${declName}(${fn.inputs.length > 0 ? fn.inputs.map((input, index) => input.name || `arg${index}`).join(',') + ',' : ''} overrides || {})
|
53
|
+
return await this.view.${declName}(${fn.inputs.length > 0 ? fn.inputs.map((input, index) => input.name || `arg${index}`).join(',') + ',' : ''} {
|
54
|
+
blockTag: this.context.blockNumber,
|
55
|
+
...overrides
|
56
|
+
})
|
59
57
|
}
|
60
58
|
`;
|
61
59
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"view-function.js","sourceRoot":"","sources":["../../../src/eth/codegen/view-function.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAA;AACjG,OAAO,EAAE,mCAAmC,EAAE,2BAA2B,EAAE,MAAM,YAAY,CAAA;AAE7F,SAAS,mBAAmB,CAAC,EAAuB;IAClD,yFAAyF;IACzF,OAAO,WAAW,mBAAmB,CAAC,EAAE,kBAAkB,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAA;AACvG,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,SAAgC;IACpE,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;QAC1B,OAAO,oBAAoB,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;KACjD;IACD,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,oBAAoB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACzE,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,EAAuB,EAAE,eAAwB;IACpF,IAAI,EAAE,CAAC,eAAe,KAAK,MAAM,IAAI,EAAE,CAAC,eAAe,KAAK,MAAM,EAAE;QAClE,OAAO,EAAE,CAAA;KACV;IACD,MAAM,QAAQ,GAAG,eAAe,CAAC,CAAC,CAAC,mCAAmC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAA;IACpF,MAAM,IAAI,GAAG,6BAA6B,GAAG,2BAA2B,CAAC,EAAE,CAAC,GAAG,IAAI,CAAA;IACnF,mBAAmB;IACnB,4BAA4B;IAC5B,6GAA6G;IAC7G,eAAe;IACf,eAAe;IACf,wGAAwG;IACxG,QAAQ;IACR,OAAO;UACC,QAAQ,IAAI,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE;QAChD,UAAU,EAAE,IAAI;KACjB,CAAC,2BAA2B,mBAAmB,CAAC,EAAE,CAAC;;sBAEhC,IAAI,IACtB,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,IAAI,MAAM,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EACxG;;;;;GAKC,CAAA;AACH,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,SAAgC;IACzE,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;QAC1B,OAAO,yBAAyB,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;KACtD;IACD,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,yBAAyB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAC9E,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,EAAuB,EAAE,eAAwB;IACzF,IAAI,EAAE,CAAC,eAAe,KAAK,MAAM,IAAI,EAAE,CAAC,eAAe,KAAK,MAAM,EAAE;QAClE,OAAO,EAAE,CAAA;KACV;IACD,MAAM,QAAQ,GAAG,eAAe,CAAC,CAAC,CAAC,mCAAmC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAA;IAEpF,OAAO;UACC,QAAQ,IAAI,EAAE,CAAC,IAAI,IAAI,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE;QAC3D,UAAU,EAAE,IAAI;KACjB,CAAC,2BAA2B,mBAAmB,CAAC,EAAE,CAAC
|
1
|
+
{"version":3,"file":"view-function.js","sourceRoot":"","sources":["../../../src/eth/codegen/view-function.ts"],"names":[],"mappings":"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","sourcesContent":["// https://github.com/dethcrypto/TypeChain/blob/015abb28bd22826611051f27e0ec96a00f9a0b61/packages/target-ethers-v5/src/codegen/functions.ts#L54\nimport { FunctionDeclaration } from 'typechain'\nimport { generateInputTypes, generateOutputTypes } from '@sentio/ethers-v6/dist/codegen/types.js'\nimport { getFullSignatureAsSymbolForFunction, getFullSignatureForFunction } from './types.js'\n\nfunction generateReturnTypes(fn: FunctionDeclaration) {\n // sounds like returnResultObject should be true but we need to set false to make it work\n return `Promise<${generateOutputTypes({ returnResultObject: false, useStructs: true }, fn.outputs)}>`\n}\n\nexport function generateViewFunctions(functions: FunctionDeclaration[]): string {\n if (functions.length === 1) {\n return generateViewFunction(functions[0], false)\n }\n return functions.map((fn) => generateViewFunction(fn, true)).join('\\n')\n}\n\nexport function generateViewFunction(fn: FunctionDeclaration, includeArgTypes: boolean): string {\n if (fn.stateMutability !== 'view' && fn.stateMutability !== 'pure') {\n return ''\n }\n const declName = includeArgTypes ? getFullSignatureAsSymbolForFunction(fn) : fn.name\n const call = 'this.contract.getFunction(\"' + getFullSignatureForFunction(fn) + '\")'\n // if (overrides) {\n // return await ${call}(${\n // fn.inputs.length > 0 ? fn.inputs.map((input, index) => input.name || `arg${index}`).join(',') + ',' : ''\n // } overrides)\n // } else {\n // return await ${call}(${fn.inputs.map((input, index) => input.name || `arg${index}`).join(',')})\n // }\n return `\n async ${declName}(${generateInputTypes(fn.inputs, {\n useStructs: true,\n })}overrides?: Overrides): ${generateReturnTypes(fn)} {\n try { \n return await ${call}(${\n fn.inputs.length > 0 ? fn.inputs.map((input, index) => input.name || `arg${index}`).join(',') + ',' : ''\n } overrides || {})\n } catch (e) {\n throw transformEtherError(e, undefined)\n }\n }\n `\n}\n\nexport function generateBoundViewFunctions(functions: FunctionDeclaration[]): string {\n if (functions.length === 1) {\n return generateBoundViewFunction(functions[0], false)\n }\n return functions.map((fn) => generateBoundViewFunction(fn, true)).join('\\n')\n}\n\nexport function generateBoundViewFunction(fn: FunctionDeclaration, includeArgTypes: boolean): string {\n if (fn.stateMutability !== 'view' && fn.stateMutability !== 'pure') {\n return ''\n }\n const declName = includeArgTypes ? getFullSignatureAsSymbolForFunction(fn) : fn.name\n\n return `\n async ${declName ?? fn.name}(${generateInputTypes(fn.inputs, {\n useStructs: true,\n })}overrides?: Overrides): ${generateReturnTypes(fn)} {\n return await this.view.${declName}(${\n fn.inputs.length > 0 ? fn.inputs.map((input, index) => input.name || `arg${index}`).join(',') + ',' : ''\n } {\n blockTag: this.context.blockNumber,\n ...overrides\n })\n }\n `\n}\n"]}
|
package/lib/eth/index.d.ts
CHANGED
@@ -2,7 +2,7 @@ export { BaseProcessor, GlobalProcessor } from './base-processor.js';
|
|
2
2
|
export { GenericProcessor } from './generic-processor.js';
|
3
3
|
export { BaseProcessorTemplate } from './base-processor-template.js';
|
4
4
|
export { AccountProcessor } from './account-processor.js';
|
5
|
-
export { getProvider, DummyProvider
|
5
|
+
export { getProvider, DummyProvider } from './provider.js';
|
6
6
|
export { EthContext } from './context.js';
|
7
7
|
export * from './eth.js';
|
8
8
|
export { BindOptions, AccountBindOptions } from './bind-options.js';
|
package/lib/eth/index.js
CHANGED
@@ -2,7 +2,7 @@ export { BaseProcessor, GlobalProcessor } from './base-processor.js';
|
|
2
2
|
export { GenericProcessor } from './generic-processor.js';
|
3
3
|
export { BaseProcessorTemplate } from './base-processor-template.js';
|
4
4
|
export { AccountProcessor } from './account-processor.js';
|
5
|
-
export { getProvider, DummyProvider
|
5
|
+
export { getProvider, DummyProvider } from './provider.js';
|
6
6
|
export { EthContext } from './context.js';
|
7
7
|
export * from './eth.js';
|
8
8
|
export { BindOptions, AccountBindOptions } from './bind-options.js';
|
package/lib/eth/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/eth/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/eth/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,cAAc,UAAU,CAAA;AACxB,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACnE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAC3F,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAE9G,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAE/C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA","sourcesContent":["export { BaseProcessor, GlobalProcessor } from './base-processor.js'\nexport { GenericProcessor } from './generic-processor.js'\nexport { BaseProcessorTemplate } from './base-processor-template.js'\nexport { AccountProcessor } from './account-processor.js'\nexport { getProvider, DummyProvider } from './provider.js'\nexport { EthContext } from './context.js'\nexport * from './eth.js'\nexport { BindOptions, AccountBindOptions } from './bind-options.js'\nexport { getProcessor, addProcessor, getContractByABI, addContractByABI } from './binds.js'\nexport { AccountContext, ContractContext, GlobalContext, ContractView, BoundContractView } from './context.js'\n\nexport { EthPlugin } from './eth-plugin.js'\n\nexport { EthFetchConfig } from '@sentio/protos'\n\nexport { EthChainId } from '../core/chain.js'\n"]}
|
package/lib/eth/provider.d.ts
CHANGED
@@ -1,6 +1,4 @@
|
|
1
1
|
import { JsonRpcProvider, Provider } from 'ethers';
|
2
2
|
import { EthChainId } from '../core/chain.js';
|
3
|
-
import { EthContext } from './context.js';
|
4
3
|
export declare const DummyProvider: JsonRpcProvider;
|
5
|
-
export declare function getEthChainId(networkish?: EthContext | EthChainId): EthChainId;
|
6
4
|
export declare function getProvider(chainId?: EthChainId): Provider;
|
package/lib/eth/provider.js
CHANGED
@@ -1,19 +1,18 @@
|
|
1
1
|
import { JsonRpcProvider, Network } from 'ethers';
|
2
2
|
import PQueue from 'p-queue';
|
3
3
|
import { Endpoints } from '@sentio/runtime';
|
4
|
-
import { BaseContext } from '../core/index.js';
|
5
4
|
import { EthChainId } from '../core/chain.js';
|
6
5
|
export const DummyProvider = new JsonRpcProvider('', Network.from(1));
|
7
6
|
const providers = new Map();
|
8
|
-
export function getEthChainId(networkish) {
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
}
|
7
|
+
// export function getEthChainId(networkish?: EthContext | EthChainId): EthChainId {
|
8
|
+
// if (!networkish) {
|
9
|
+
// networkish = EthChainId.ETHEREUM
|
10
|
+
// }
|
11
|
+
// if (networkish instanceof BaseContext) {
|
12
|
+
// networkish = networkish.getChainId()
|
13
|
+
// }
|
14
|
+
// return networkish
|
15
|
+
// }
|
17
16
|
export function getProvider(chainId) {
|
18
17
|
// const network = getNetworkFromCtxOrNetworkish(networkish)
|
19
18
|
if (!chainId) {
|
package/lib/eth/provider.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/eth/provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,OAAO,EAAY,MAAM,QAAQ,CAAA;AAE3D,OAAO,MAAM,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/eth/provider.ts"],"names":[],"mappings":"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","sourcesContent":["import { JsonRpcProvider, Network, Provider } from 'ethers'\n\nimport PQueue from 'p-queue'\nimport { Endpoints } from '@sentio/runtime'\nimport { EthChainId } from '../core/chain.js'\n\nexport const DummyProvider = new JsonRpcProvider('', Network.from(1))\n\nconst providers = new Map<string, JsonRpcProvider>()\n\n// export function getEthChainId(networkish?: EthContext | EthChainId): EthChainId {\n// if (!networkish) {\n// networkish = EthChainId.ETHEREUM\n// }\n// if (networkish instanceof BaseContext) {\n// networkish = networkish.getChainId()\n// }\n// return networkish\n// }\n\nexport function getProvider(chainId?: EthChainId): Provider {\n // const network = getNetworkFromCtxOrNetworkish(networkish)\n if (!chainId) {\n chainId = EthChainId.ETHEREUM\n }\n const network = Network.from(parseInt(chainId))\n // TODO check if other key needed\n\n const address = Endpoints.INSTANCE.chainServer.get(chainId)\n const key = network.chainId.toString() + '-' + address\n let provider = providers.get(key)\n\n if (provider) {\n return provider\n }\n\n if (address === undefined) {\n throw Error(\n 'Provider not found for chain ' +\n network.chainId +\n ', configured chains: ' +\n [...Endpoints.INSTANCE.chainServer.keys()].join(' ')\n )\n }\n provider = new QueuedStaticJsonRpcProvider(address, network, Endpoints.INSTANCE.concurrency)\n providers.set(network.chainId.toString(), provider)\n return provider\n}\n\nfunction getTag(prefix: string, value: any): string {\n return (\n prefix +\n ':' +\n JSON.stringify(value, (k, v) => {\n if (v == null) {\n return 'null'\n }\n if (typeof v === 'bigint') {\n return `bigint:${v.toString()}`\n }\n if (typeof v === 'string') {\n return v.toLowerCase()\n }\n\n // Sort object keys\n if (typeof v === 'object' && !Array.isArray(v)) {\n const keys = Object.keys(v)\n keys.sort()\n return keys.reduce((accum, key) => {\n accum[key] = v[key]\n return accum\n }, <any>{})\n }\n\n return v\n })\n )\n}\n\nclass QueuedStaticJsonRpcProvider extends JsonRpcProvider {\n executor: PQueue\n #performCache = new Map<string, Promise<any>>()\n\n constructor(url: string, network: Network, concurrency: number) {\n // TODO re-enable match when possible\n super(url, network, { staticNetwork: network, batchMaxCount: 1 })\n this.executor = new PQueue({ concurrency: concurrency })\n }\n\n async send(method: string, params: Array<any>): Promise<any> {\n const tag = getTag(method, params)\n const block = params[params.length - 1]\n let perform = this.#performCache.get(tag)\n if (!perform) {\n perform = this.executor.add(() => super.send(method, params))\n this.#performCache.set(tag, perform)\n // For non latest block call, we cache permanently, otherwise we cache for one minute\n if (block === 'latest') {\n setTimeout(() => {\n if (this.#performCache.get(tag) === perform) {\n this.#performCache.delete(tag)\n }\n }, 60 * 1000)\n }\n }\n\n const result = await perform\n if (!result) {\n throw Error('Unexpected null response')\n }\n return result\n }\n}\n"]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"provider.test.js","sourceRoot":"","sources":["../../src/eth/provider.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
1
|
+
{"version":3,"file":"provider.test.js","sourceRoot":"","sources":["../../src/eth/provider.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,iDAAiD;IACjD,mCAAmC;IACnC,+BAA+B;IAC/B,KAAK;IAEL,6CAA6C;IAC7C,iCAAiC;IACjC,+BAA+B;IAC/B,KAAK;IAEL,IAAI,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;QAC3C,MAAM,GAAG,GAAG,IAAI,cAAc,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QACxD,MAAM,CAAC,GAAG,GAAG,CAAC,UAAU,EAAE,CAAA;QAC1B,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;IACjC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA","sourcesContent":["import { expect } from 'chai'\nimport { AccountContext } from './context.js'\nimport { EthChainId } from '../core/chain.js'\n\ndescribe('provider test', () => {\n // test('network test with string', async () => {\n // const n = getEthChainId('321')\n // expect(n.chainId).eq(321n)\n // })\n\n // test('network test with id', async () => {\n // const n = getEthChainId(321)\n // expect(n.chainId).eq(321n)\n // })\n\n test('network test with context', async () => {\n const ctx = new AccountContext(EthChainId.KUCOIN, '0x1')\n const n = ctx.getChainId()\n expect(n).eq(EthChainId.KUCOIN)\n })\n})\n"]}
|
package/lib/utils/token.js
CHANGED
@@ -2,7 +2,8 @@ import { getERC20Contract } from '../eth/builtin/erc20.js';
|
|
2
2
|
import { getERC20BytesContract } from '../eth/builtin/erc20bytes.js';
|
3
3
|
import { scaleDown } from '../core/big-decimal.js';
|
4
4
|
import { decodeBytes32String } from 'ethers';
|
5
|
-
import {
|
5
|
+
import { EthChainId } from '../eth/index.js';
|
6
|
+
import { BaseContext } from '../core/index.js';
|
6
7
|
export const NATIVE_ETH = {
|
7
8
|
symbol: 'ETH',
|
8
9
|
decimal: 18,
|
@@ -17,7 +18,13 @@ async function getTokenInfoPromise(symbol, name, decimal) {
|
|
17
18
|
};
|
18
19
|
}
|
19
20
|
export async function getERC20TokenInfo(contextOrNetworkish, tokenAddress) {
|
20
|
-
|
21
|
+
let chainId;
|
22
|
+
if (contextOrNetworkish instanceof BaseContext) {
|
23
|
+
chainId = contextOrNetworkish.getChainId();
|
24
|
+
}
|
25
|
+
else {
|
26
|
+
chainId = contextOrNetworkish || EthChainId.ETHEREUM;
|
27
|
+
}
|
21
28
|
const key = chainId + tokenAddress;
|
22
29
|
const res = TOKEN_INFOS.get(key);
|
23
30
|
if (res) {
|
package/lib/utils/token.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"token.js","sourceRoot":"","sources":["../../src/utils/token.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAc,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAE9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAA;AAC5C,OAAO,
|
1
|
+
{"version":3,"file":"token.js","sourceRoot":"","sources":["../../src/utils/token.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAc,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAE9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAc,MAAM,iBAAiB,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAQ9C,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,MAAM,EAAE,KAAK;IACb,OAAO,EAAE,EAAE;IACX,IAAI,EAAE,YAAY;CACnB,CAAA;AAED,MAAM,WAAW,GAAG,IAAI,GAAG,EAA8B,CAAA;AAEzD,KAAK,UAAU,mBAAmB,CAChC,MAAuC,EACvC,IAAqC,EACrC,OAA+B;IAE/B,OAAO;QACL,MAAM,EAAE,MAAM,MAAM;QACpB,IAAI,EAAE,MAAM,IAAI;QAChB,OAAO,EAAE,MAAM,CAAC,MAAM,OAAO,CAAC;KAC/B,CAAA;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,mBAA4C,EAC5C,YAAoB;IAEpB,IAAI,OAAmB,CAAA;IACvB,IAAI,mBAAmB,YAAY,WAAW,EAAE;QAC9C,OAAO,GAAG,mBAAmB,CAAC,UAAU,EAAE,CAAA;KAC3C;SAAM;QACL,OAAO,GAAG,mBAAmB,IAAI,UAAU,CAAC,QAAQ,CAAA;KACrD;IAED,MAAM,GAAG,GAAG,OAAO,GAAG,YAAY,CAAA;IAClC,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAChC,IAAI,GAAG,EAAE;QACP,OAAO,GAAG,CAAA;KACX;IACD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;IACxD,MAAM,aAAa,GAAG,qBAAqB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;IAElE,IAAI,IAAI,GAAG,EAAE,CAAA;IACb,IAAI;QACF,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;KAC7B;IAAC,OAAO,CAAC,EAAE;QACV,IAAI,GAAG,mBAAmB,CAAC,MAAM,aAAa,CAAC,IAAI,EAAE,CAAC,CAAA;KACvD;IAED,IAAI,MAAM,GAAG,EAAE,CAAA;IACf,IAAI;QACF,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAA;KACjC;IAAC,OAAO,CAAC,EAAE;QACV,MAAM,GAAG,mBAAmB,CAAC,MAAM,aAAa,CAAC,MAAM,EAAE,CAAC,CAAA;KAC3D;IAED,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,CAAA;IACzC,MAAM,IAAI,GAAG,mBAAmB,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;IAEvD,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAC1B,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,mBAA4C,EAC5C,YAAoB,EACpB,MAAc;IAEd,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAA;IAC5E,OAAO,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,CAAA;AAC7C,CAAC","sourcesContent":["import { getERC20Contract } from '../eth/builtin/erc20.js'\nimport { getERC20BytesContract } from '../eth/builtin/erc20bytes.js'\nimport { BigDecimal, scaleDown } from '../core/big-decimal.js'\nimport { PromiseOrValue } from '../eth/builtin/internal/common.js'\nimport { decodeBytes32String } from 'ethers'\nimport { EthChainId, EthContext } from '../eth/index.js'\nimport { BaseContext } from '../core/index.js'\n\nexport interface TokenInfo {\n symbol: string\n name: string\n decimal: number\n}\n\nexport const NATIVE_ETH = {\n symbol: 'ETH',\n decimal: 18,\n name: 'Native ETH',\n}\n\nconst TOKEN_INFOS = new Map<string, Promise<TokenInfo>>()\n\nasync function getTokenInfoPromise(\n symbol: PromiseOrValue<string> | string,\n name: PromiseOrValue<string> | string,\n decimal: PromiseOrValue<bigint>\n): Promise<TokenInfo> {\n return {\n symbol: await symbol,\n name: await name,\n decimal: Number(await decimal),\n }\n}\n\nexport async function getERC20TokenInfo(\n contextOrNetworkish: EthContext | EthChainId,\n tokenAddress: string\n): Promise<TokenInfo> {\n let chainId: EthChainId\n if (contextOrNetworkish instanceof BaseContext) {\n chainId = contextOrNetworkish.getChainId()\n } else {\n chainId = contextOrNetworkish || EthChainId.ETHEREUM\n }\n\n const key = chainId + tokenAddress\n const res = TOKEN_INFOS.get(key)\n if (res) {\n return res\n }\n const contract = getERC20Contract(chainId, tokenAddress)\n const bytesContract = getERC20BytesContract(chainId, tokenAddress)\n\n let name = ''\n try {\n name = await contract.name()\n } catch (e) {\n name = decodeBytes32String(await bytesContract.name())\n }\n\n let symbol = ''\n try {\n symbol = await contract.symbol()\n } catch (e) {\n symbol = decodeBytes32String(await bytesContract.symbol())\n }\n\n const decimal = await contract.decimals()\n const info = getTokenInfoPromise(symbol, name, decimal)\n\n TOKEN_INFOS.set(key, info)\n return info\n}\n\nexport async function getER20NormalizedAmount(\n contextOrNetworkish: EthContext | EthChainId,\n tokenAddress: string,\n amount: bigint\n): Promise<BigDecimal> {\n const tokenInfo = await getERC20TokenInfo(contextOrNetworkish, tokenAddress)\n return scaleDown(amount, tokenInfo.decimal)\n}\n"]}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@sentio/sdk",
|
3
|
-
"version": "2.15.6-rc.
|
3
|
+
"version": "2.15.6-rc.2",
|
4
4
|
"license": "Apache-2.0",
|
5
5
|
"type": "module",
|
6
6
|
"exports": {
|
@@ -70,8 +70,8 @@
|
|
70
70
|
"typechain": "^8.0.0",
|
71
71
|
"typedoc": "^0.24.1",
|
72
72
|
"yaml": "^2.2.1",
|
73
|
-
"@sentio/protos": "^2.15.6-rc.
|
74
|
-
"@sentio/runtime": "^2.15.6-rc.
|
73
|
+
"@sentio/protos": "^2.15.6-rc.2",
|
74
|
+
"@sentio/runtime": "^2.15.6-rc.2"
|
75
75
|
},
|
76
76
|
"peerDependencies": {
|
77
77
|
"tsup": "npm:@sentio/tsup@^6.7.0"
|
@@ -18,7 +18,6 @@ import {
|
|
18
18
|
DummyProvider,
|
19
19
|
EthChainId,
|
20
20
|
TypedCallTrace,
|
21
|
-
getEthChainId,
|
22
21
|
EthContext,
|
23
22
|
EthFetchConfig,
|
24
23
|
} from "@sentio/sdk/eth";
|
@@ -421,51 +420,41 @@ export class EACAggregatorProxyBoundContractView extends BoundContractView<
|
|
421
420
|
EACAggregatorProxyContractView
|
422
421
|
> {
|
423
422
|
async accessController(overrides?: Overrides): Promise<string> {
|
424
|
-
|
425
|
-
|
426
|
-
|
427
|
-
|
428
|
-
}
|
429
|
-
return await this.view.accessController(overrides || {});
|
423
|
+
return await this.view.accessController({
|
424
|
+
blockTag: this.context.blockNumber,
|
425
|
+
...overrides,
|
426
|
+
});
|
430
427
|
}
|
431
428
|
|
432
429
|
async aggregator(overrides?: Overrides): Promise<string> {
|
433
|
-
|
434
|
-
|
435
|
-
|
436
|
-
|
437
|
-
}
|
438
|
-
return await this.view.aggregator(overrides || {});
|
430
|
+
return await this.view.aggregator({
|
431
|
+
blockTag: this.context.blockNumber,
|
432
|
+
...overrides,
|
433
|
+
});
|
439
434
|
}
|
440
435
|
|
441
436
|
async decimals(overrides?: Overrides): Promise<bigint> {
|
442
|
-
|
443
|
-
|
444
|
-
|
445
|
-
|
446
|
-
}
|
447
|
-
return await this.view.decimals(overrides || {});
|
437
|
+
return await this.view.decimals({
|
438
|
+
blockTag: this.context.blockNumber,
|
439
|
+
...overrides,
|
440
|
+
});
|
448
441
|
}
|
449
442
|
|
450
443
|
async description(overrides?: Overrides): Promise<string> {
|
451
|
-
|
452
|
-
|
453
|
-
|
454
|
-
|
455
|
-
}
|
456
|
-
return await this.view.description(overrides || {});
|
444
|
+
return await this.view.description({
|
445
|
+
blockTag: this.context.blockNumber,
|
446
|
+
...overrides,
|
447
|
+
});
|
457
448
|
}
|
458
449
|
|
459
450
|
async getAnswer(
|
460
451
|
_roundId: BigNumberish,
|
461
452
|
overrides?: Overrides
|
462
453
|
): Promise<bigint> {
|
463
|
-
|
464
|
-
|
465
|
-
|
466
|
-
|
467
|
-
}
|
468
|
-
return await this.view.getAnswer(_roundId, overrides || {});
|
454
|
+
return await this.view.getAnswer(_roundId, {
|
455
|
+
blockTag: this.context.blockNumber,
|
456
|
+
...overrides,
|
457
|
+
});
|
469
458
|
}
|
470
459
|
|
471
460
|
async getRoundData(
|
@@ -480,42 +469,34 @@ export class EACAggregatorProxyBoundContractView extends BoundContractView<
|
|
480
469
|
answeredInRound: bigint;
|
481
470
|
}
|
482
471
|
> {
|
483
|
-
|
484
|
-
|
485
|
-
|
486
|
-
|
487
|
-
}
|
488
|
-
return await this.view.getRoundData(_roundId, overrides || {});
|
472
|
+
return await this.view.getRoundData(_roundId, {
|
473
|
+
blockTag: this.context.blockNumber,
|
474
|
+
...overrides,
|
475
|
+
});
|
489
476
|
}
|
490
477
|
|
491
478
|
async getTimestamp(
|
492
479
|
_roundId: BigNumberish,
|
493
480
|
overrides?: Overrides
|
494
481
|
): Promise<bigint> {
|
495
|
-
|
496
|
-
|
497
|
-
|
498
|
-
|
499
|
-
}
|
500
|
-
return await this.view.getTimestamp(_roundId, overrides || {});
|
482
|
+
return await this.view.getTimestamp(_roundId, {
|
483
|
+
blockTag: this.context.blockNumber,
|
484
|
+
...overrides,
|
485
|
+
});
|
501
486
|
}
|
502
487
|
|
503
488
|
async latestAnswer(overrides?: Overrides): Promise<bigint> {
|
504
|
-
|
505
|
-
|
506
|
-
|
507
|
-
|
508
|
-
}
|
509
|
-
return await this.view.latestAnswer(overrides || {});
|
489
|
+
return await this.view.latestAnswer({
|
490
|
+
blockTag: this.context.blockNumber,
|
491
|
+
...overrides,
|
492
|
+
});
|
510
493
|
}
|
511
494
|
|
512
495
|
async latestRound(overrides?: Overrides): Promise<bigint> {
|
513
|
-
|
514
|
-
|
515
|
-
|
516
|
-
|
517
|
-
}
|
518
|
-
return await this.view.latestRound(overrides || {});
|
496
|
+
return await this.view.latestRound({
|
497
|
+
blockTag: this.context.blockNumber,
|
498
|
+
...overrides,
|
499
|
+
});
|
519
500
|
}
|
520
501
|
|
521
502
|
async latestRoundData(
|
@@ -529,60 +510,48 @@ export class EACAggregatorProxyBoundContractView extends BoundContractView<
|
|
529
510
|
answeredInRound: bigint;
|
530
511
|
}
|
531
512
|
> {
|
532
|
-
|
533
|
-
|
534
|
-
|
535
|
-
|
536
|
-
}
|
537
|
-
return await this.view.latestRoundData(overrides || {});
|
513
|
+
return await this.view.latestRoundData({
|
514
|
+
blockTag: this.context.blockNumber,
|
515
|
+
...overrides,
|
516
|
+
});
|
538
517
|
}
|
539
518
|
|
540
519
|
async latestTimestamp(overrides?: Overrides): Promise<bigint> {
|
541
|
-
|
542
|
-
|
543
|
-
|
544
|
-
|
545
|
-
}
|
546
|
-
return await this.view.latestTimestamp(overrides || {});
|
520
|
+
return await this.view.latestTimestamp({
|
521
|
+
blockTag: this.context.blockNumber,
|
522
|
+
...overrides,
|
523
|
+
});
|
547
524
|
}
|
548
525
|
|
549
526
|
async owner(overrides?: Overrides): Promise<string> {
|
550
|
-
|
551
|
-
|
552
|
-
|
553
|
-
|
554
|
-
}
|
555
|
-
return await this.view.owner(overrides || {});
|
527
|
+
return await this.view.owner({
|
528
|
+
blockTag: this.context.blockNumber,
|
529
|
+
...overrides,
|
530
|
+
});
|
556
531
|
}
|
557
532
|
|
558
533
|
async phaseAggregators(
|
559
534
|
arg0: BigNumberish,
|
560
535
|
overrides?: Overrides
|
561
536
|
): Promise<string> {
|
562
|
-
|
563
|
-
|
564
|
-
|
565
|
-
|
566
|
-
}
|
567
|
-
return await this.view.phaseAggregators(arg0, overrides || {});
|
537
|
+
return await this.view.phaseAggregators(arg0, {
|
538
|
+
blockTag: this.context.blockNumber,
|
539
|
+
...overrides,
|
540
|
+
});
|
568
541
|
}
|
569
542
|
|
570
543
|
async phaseId(overrides?: Overrides): Promise<bigint> {
|
571
|
-
|
572
|
-
|
573
|
-
|
574
|
-
|
575
|
-
}
|
576
|
-
return await this.view.phaseId(overrides || {});
|
544
|
+
return await this.view.phaseId({
|
545
|
+
blockTag: this.context.blockNumber,
|
546
|
+
...overrides,
|
547
|
+
});
|
577
548
|
}
|
578
549
|
|
579
550
|
async proposedAggregator(overrides?: Overrides): Promise<string> {
|
580
|
-
|
581
|
-
|
582
|
-
|
583
|
-
|
584
|
-
}
|
585
|
-
return await this.view.proposedAggregator(overrides || {});
|
551
|
+
return await this.view.proposedAggregator({
|
552
|
+
blockTag: this.context.blockNumber,
|
553
|
+
...overrides,
|
554
|
+
});
|
586
555
|
}
|
587
556
|
|
588
557
|
async proposedGetRoundData(
|
@@ -597,12 +566,10 @@ export class EACAggregatorProxyBoundContractView extends BoundContractView<
|
|
597
566
|
answeredInRound: bigint;
|
598
567
|
}
|
599
568
|
> {
|
600
|
-
|
601
|
-
|
602
|
-
|
603
|
-
|
604
|
-
}
|
605
|
-
return await this.view.proposedGetRoundData(_roundId, overrides || {});
|
569
|
+
return await this.view.proposedGetRoundData(_roundId, {
|
570
|
+
blockTag: this.context.blockNumber,
|
571
|
+
...overrides,
|
572
|
+
});
|
606
573
|
}
|
607
574
|
|
608
575
|
async proposedLatestRoundData(
|
@@ -616,21 +583,17 @@ export class EACAggregatorProxyBoundContractView extends BoundContractView<
|
|
616
583
|
answeredInRound: bigint;
|
617
584
|
}
|
618
585
|
> {
|
619
|
-
|
620
|
-
|
621
|
-
|
622
|
-
|
623
|
-
}
|
624
|
-
return await this.view.proposedLatestRoundData(overrides || {});
|
586
|
+
return await this.view.proposedLatestRoundData({
|
587
|
+
blockTag: this.context.blockNumber,
|
588
|
+
...overrides,
|
589
|
+
});
|
625
590
|
}
|
626
591
|
|
627
592
|
async version(overrides?: Overrides): Promise<bigint> {
|
628
|
-
|
629
|
-
|
630
|
-
|
631
|
-
|
632
|
-
}
|
633
|
-
return await this.view.version(overrides || {});
|
593
|
+
return await this.view.version({
|
594
|
+
blockTag: this.context.blockNumber,
|
595
|
+
...overrides,
|
596
|
+
});
|
634
597
|
}
|
635
598
|
}
|
636
599
|
|
@@ -1067,22 +1030,29 @@ export class EACAggregatorProxyProcessorTemplate extends BaseProcessorTemplate<
|
|
1067
1030
|
}
|
1068
1031
|
|
1069
1032
|
export function getEACAggregatorProxyContract(
|
1070
|
-
|
1033
|
+
chainId: EthChainId,
|
1071
1034
|
address: string
|
1072
1035
|
): EACAggregatorProxyContractView {
|
1073
|
-
const network = getEthChainId(contextOrNetwork);
|
1074
1036
|
let contract = getContractByABI(
|
1075
1037
|
"EACAggregatorProxy",
|
1076
1038
|
address,
|
1077
|
-
|
1039
|
+
chainId
|
1078
1040
|
) as EACAggregatorProxyContractView;
|
1079
1041
|
if (!contract) {
|
1080
1042
|
const rawContract = EACAggregatorProxy__factory.connect(
|
1081
1043
|
address,
|
1082
|
-
getProvider(
|
1044
|
+
getProvider(chainId)
|
1083
1045
|
);
|
1084
1046
|
contract = new EACAggregatorProxyContractView(rawContract);
|
1085
|
-
addContractByABI("EACAggregatorProxy", address,
|
1047
|
+
addContractByABI("EACAggregatorProxy", address, chainId, contract);
|
1086
1048
|
}
|
1087
1049
|
return contract;
|
1088
1050
|
}
|
1051
|
+
|
1052
|
+
export function getEACAggregatorProxyContractOnContext(
|
1053
|
+
context: EthContext,
|
1054
|
+
address: string
|
1055
|
+
): EACAggregatorProxyBoundContractView {
|
1056
|
+
const view = getEACAggregatorProxyContract(context.getChainId(), address);
|
1057
|
+
return new EACAggregatorProxyBoundContractView(address, view);
|
1058
|
+
}
|