@sentio/sdk 2.15.6-rc.3 → 2.15.6-rc.4

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.
@@ -11,7 +11,7 @@ export declare abstract class EthContext extends BaseContext {
11
11
  private readonly log?;
12
12
  block?: BlockParams;
13
13
  private readonly trace?;
14
- blockNumber: bigint | number;
14
+ blockNumber: number;
15
15
  transactionHash?: string;
16
16
  transaction?: TransactionResponseParams;
17
17
  transactionReceipt?: TransactionReceiptParams;
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/eth/context.ts"],"names":[],"mappings":"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","sourcesContent":["import { BaseContract } from 'ethers'\nimport { LogParams, BlockParams, TransactionReceiptParams, TransactionResponseParams } from 'ethers/providers'\n\nimport { RecordMetaData } from '@sentio/protos'\nimport { Trace } from './eth.js'\nimport { Labels, normalizeLabels } from '../core/index.js'\nimport { BaseContext } from '../core/base-context.js'\nimport { EthChainId } from '../core/chain.js'\n\nexport abstract class EthContext extends BaseContext {\n chainId: EthChainId\n address: string\n private readonly log?: LogParams\n block?: BlockParams\n private readonly trace?: Trace\n blockNumber: bigint | number\n transactionHash?: string\n transaction?: TransactionResponseParams\n transactionReceipt?: TransactionReceiptParams\n timestamp: Date\n\n constructor(\n chainId: EthChainId,\n address: string,\n timestamp?: Date,\n block?: BlockParams,\n log?: LogParams,\n trace?: Trace,\n transaction?: TransactionResponseParams,\n transactionReceipt?: TransactionReceiptParams,\n baseLabels?: Labels\n ) {\n super(baseLabels)\n this.chainId = chainId\n this.log = log\n this.block = block\n this.trace = trace\n this.address = address.toLowerCase()\n this.transaction = transaction\n this.transactionReceipt = transactionReceipt\n this.timestamp = timestamp || new Date(0)\n if (log) {\n this.blockNumber = log.blockNumber\n this.transactionHash = log.transactionHash\n } else if (block) {\n this.blockNumber = block.number\n } else if (trace) {\n this.blockNumber = trace.blockNumber\n this.transactionHash = trace.transactionHash\n }\n }\n\n protected abstract getContractName(): string\n\n getChainId(): EthChainId {\n return this.chainId\n }\n\n getMetaDataInternal(name: string, labels: Labels): RecordMetaData {\n if (this.log) {\n return {\n address: this.address,\n contractName: this.getContractName(),\n blockNumber: BigInt(this.blockNumber),\n transactionIndex: this.log.transactionIndex,\n transactionHash: this.transactionHash || '',\n logIndex: this.log.index,\n chainId: this.chainId,\n name: name,\n labels: normalizeLabels(labels),\n }\n }\n if (this.block) {\n return {\n address: this.address,\n contractName: this.getContractName(),\n blockNumber: BigInt(this.blockNumber),\n transactionIndex: -1,\n transactionHash: '',\n logIndex: -1,\n chainId: this.chainId.toString(),\n name: name,\n labels: normalizeLabels(labels),\n }\n }\n if (this.trace) {\n return {\n address: this.address,\n contractName: this.getContractName(),\n blockNumber: BigInt(this.blockNumber),\n transactionIndex: this.trace.transactionPosition,\n transactionHash: this.transactionHash || '',\n logIndex: -1,\n chainId: this.chainId.toString(),\n name: name,\n labels: normalizeLabels(labels),\n }\n }\n throw new Error(\"Invaid ctx argument can't happen\")\n }\n}\n\nexport class AccountContext extends EthContext {\n // constructor(chainId: number, address: string, block?: Block, log?: Log, trace?: Trace) {\n // super(chainId, address, new Date(0), block, log, trace)\n // }\n protected getContractName(): string {\n return 'account'\n }\n}\n\nexport class GlobalContext extends EthContext {\n constructor(\n chainId: EthChainId,\n timestamp?: Date,\n block?: BlockParams,\n log?: LogParams,\n trace?: Trace,\n transaction?: TransactionResponseParams,\n transactionReceipt?: TransactionReceiptParams\n ) {\n super(chainId, '*', timestamp, block, log, trace, transaction, transactionReceipt)\n }\n protected getContractName(): string {\n return '*'\n }\n}\n\nexport class ContractContext<\n TContract extends BaseContract,\n TContractBoundView extends BoundContractView<TContract, ContractView<TContract>>\n> extends EthContext {\n contract: TContractBoundView\n contractName: string\n\n constructor(\n contractName: string,\n view: TContractBoundView,\n chainId: EthChainId,\n timestamp?: Date,\n block?: BlockParams,\n log?: LogParams,\n trace?: Trace,\n transaction?: TransactionResponseParams,\n transactionReceipt?: TransactionReceiptParams,\n baseLabels?: Labels\n ) {\n super(chainId, view.address, timestamp, block, log, trace, transaction, transactionReceipt, baseLabels)\n view.context = this\n this.contractName = contractName\n this.contract = view\n }\n\n protected getContractName(): string {\n return this.contractName\n }\n}\n\nexport class ContractView<TContract extends BaseContract> {\n protected contract: TContract\n\n constructor(contract: TContract) {\n this.contract = contract\n }\n\n get rawContract() {\n return this.contract\n }\n\n get provider() {\n if (this.contract.runner?.provider) {\n return this.contract.runner.provider\n }\n throw Error(\"Can't find provider for contract\" + this.contract.toString())\n }\n}\n\nexport class BoundContractView<TContract extends BaseContract, TContractView extends ContractView<TContract>> {\n protected view: TContractView\n readonly address: string\n // context will be set right after context creation (in context's constructor)\n context: ContractContext<TContract, BoundContractView<TContract, TContractView>>\n\n constructor(address: string, view: TContractView) {\n this.address = address\n this.view = view\n }\n\n get rawContract() {\n return this.view.rawContract\n }\n\n get provider() {\n return this.view.provider\n }\n\n get filters() {\n return this.view.rawContract.filters\n }\n}\n"]}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/eth/context.ts"],"names":[],"mappings":"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","sourcesContent":["import { BaseContract } from 'ethers'\nimport { LogParams, BlockParams, TransactionReceiptParams, TransactionResponseParams } from 'ethers/providers'\n\nimport { RecordMetaData } from '@sentio/protos'\nimport { Trace } from './eth.js'\nimport { Labels, normalizeLabels } from '../core/index.js'\nimport { BaseContext } from '../core/base-context.js'\nimport { EthChainId } from '../core/chain.js'\n\nexport abstract class EthContext extends BaseContext {\n chainId: EthChainId\n address: string\n private readonly log?: LogParams\n block?: BlockParams\n private readonly trace?: Trace\n blockNumber: number\n transactionHash?: string\n transaction?: TransactionResponseParams\n transactionReceipt?: TransactionReceiptParams\n timestamp: Date\n\n constructor(\n chainId: EthChainId,\n address: string,\n timestamp?: Date,\n block?: BlockParams,\n log?: LogParams,\n trace?: Trace,\n transaction?: TransactionResponseParams,\n transactionReceipt?: TransactionReceiptParams,\n baseLabels?: Labels\n ) {\n super(baseLabels)\n this.chainId = chainId\n this.log = log\n this.block = block\n this.trace = trace\n this.address = address.toLowerCase()\n this.transaction = transaction\n this.transactionReceipt = transactionReceipt\n this.timestamp = timestamp || new Date(0)\n if (log) {\n this.blockNumber = log.blockNumber\n this.transactionHash = log.transactionHash\n } else if (block) {\n this.blockNumber = block.number\n } else if (trace) {\n this.blockNumber = trace.blockNumber\n this.transactionHash = trace.transactionHash\n }\n }\n\n protected abstract getContractName(): string\n\n getChainId(): EthChainId {\n return this.chainId\n }\n\n getMetaDataInternal(name: string, labels: Labels): RecordMetaData {\n if (this.log) {\n return {\n address: this.address,\n contractName: this.getContractName(),\n blockNumber: BigInt(this.blockNumber),\n transactionIndex: this.log.transactionIndex,\n transactionHash: this.transactionHash || '',\n logIndex: this.log.index,\n chainId: this.chainId,\n name: name,\n labels: normalizeLabels(labels),\n }\n }\n if (this.block) {\n return {\n address: this.address,\n contractName: this.getContractName(),\n blockNumber: BigInt(this.blockNumber),\n transactionIndex: -1,\n transactionHash: '',\n logIndex: -1,\n chainId: this.chainId.toString(),\n name: name,\n labels: normalizeLabels(labels),\n }\n }\n if (this.trace) {\n return {\n address: this.address,\n contractName: this.getContractName(),\n blockNumber: BigInt(this.blockNumber),\n transactionIndex: this.trace.transactionPosition,\n transactionHash: this.transactionHash || '',\n logIndex: -1,\n chainId: this.chainId.toString(),\n name: name,\n labels: normalizeLabels(labels),\n }\n }\n throw new Error(\"Invaid ctx argument can't happen\")\n }\n}\n\nexport class AccountContext extends EthContext {\n // constructor(chainId: number, address: string, block?: Block, log?: Log, trace?: Trace) {\n // super(chainId, address, new Date(0), block, log, trace)\n // }\n protected getContractName(): string {\n return 'account'\n }\n}\n\nexport class GlobalContext extends EthContext {\n constructor(\n chainId: EthChainId,\n timestamp?: Date,\n block?: BlockParams,\n log?: LogParams,\n trace?: Trace,\n transaction?: TransactionResponseParams,\n transactionReceipt?: TransactionReceiptParams\n ) {\n super(chainId, '*', timestamp, block, log, trace, transaction, transactionReceipt)\n }\n protected getContractName(): string {\n return '*'\n }\n}\n\nexport class ContractContext<\n TContract extends BaseContract,\n TContractBoundView extends BoundContractView<TContract, ContractView<TContract>>\n> extends EthContext {\n contract: TContractBoundView\n contractName: string\n\n constructor(\n contractName: string,\n view: TContractBoundView,\n chainId: EthChainId,\n timestamp?: Date,\n block?: BlockParams,\n log?: LogParams,\n trace?: Trace,\n transaction?: TransactionResponseParams,\n transactionReceipt?: TransactionReceiptParams,\n baseLabels?: Labels\n ) {\n super(chainId, view.address, timestamp, block, log, trace, transaction, transactionReceipt, baseLabels)\n view.context = this\n this.contractName = contractName\n this.contract = view\n }\n\n protected getContractName(): string {\n return this.contractName\n }\n}\n\nexport class ContractView<TContract extends BaseContract> {\n protected contract: TContract\n\n constructor(contract: TContract) {\n this.contract = contract\n }\n\n get rawContract() {\n return this.contract\n }\n\n get provider() {\n if (this.contract.runner?.provider) {\n return this.contract.runner.provider\n }\n throw Error(\"Can't find provider for contract\" + this.contract.toString())\n }\n}\n\nexport class BoundContractView<TContract extends BaseContract, TContractView extends ContractView<TContract>> {\n protected view: TContractView\n readonly address: string\n // context will be set right after context creation (in context's constructor)\n context: ContractContext<TContract, BoundContractView<TContract, TContractView>>\n\n constructor(address: string, view: TContractView) {\n this.address = address\n this.view = view\n }\n\n get rawContract() {\n return this.view.rawContract\n }\n\n get provider() {\n return this.view.provider\n }\n\n get filters() {\n return this.view.rawContract.filters\n }\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sentio/sdk",
3
- "version": "2.15.6-rc.3",
3
+ "version": "2.15.6-rc.4",
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.3",
74
- "@sentio/runtime": "^2.15.6-rc.3"
73
+ "@sentio/protos": "^2.15.6-rc.4",
74
+ "@sentio/runtime": "^2.15.6-rc.4"
75
75
  },
76
76
  "peerDependencies": {
77
77
  "tsup": "npm:@sentio/tsup@^6.7.0"
@@ -13,7 +13,7 @@ export abstract class EthContext extends BaseContext {
13
13
  private readonly log?: LogParams
14
14
  block?: BlockParams
15
15
  private readonly trace?: Trace
16
- blockNumber: bigint | number
16
+ blockNumber: number
17
17
  transactionHash?: string
18
18
  transaction?: TransactionResponseParams
19
19
  transactionReceipt?: TransactionReceiptParams