erc7730.model.input.context module

pydantic model erc7730.model.input.context.InputBindingContext[source]View on GitHub

Bases: Model

Fields:
field deployments: list[InputDeployment] [Required]

An array of deployments describing where the contract is deployed. The target contract (Tx to orfactory) MUST match one of those deployments.

Constraints:
  • min_length = 1

pydantic model erc7730.model.input.context.InputContract[source]View on GitHub

Bases: InputBindingContext

The contract binding context is a set constraints that are used to bind the ERC7730 file to a specific smart contract.

Fields:
field abi: list[Annotated[Constructor | Event | Function | Fallback | Error | Receive, FieldInfo(annotation=NoneType, required=True, discriminator='type')]] | HttpUrl [Required]

The ABI of the target contract. This can be either an array of ABI objects or an URL pointing tothe ABI.

field addressMatcher: HttpUrl | None = None

An URL of a contract address matcher that should be used to match the contract address.

field factory: InputFactory | None = None

A factory constraint is used to check whether the target contract is deployed by a specifiedfactory.

pydantic model erc7730.model.input.context.InputContractContext[source]View on GitHub

Bases: Model

Contract Binding Context.

The contract binding context is a set constraints that are used to bind the ERC7730 file to a specific smart contract.

Fields:
field contract: InputContract [Required]

The contract binding context is a set constraints that are used to bind the ERC7730 file to aspecific smart contract.

field id: validate, json_schema_input_type=PydanticUndefined)] | None = None (alias '$id')

An internal identifier that can be used either for clarity specifying what the element is or as areference in device specific sections.

pydantic model erc7730.model.input.context.InputDeployment[source]View on GitHub

Bases: Model

A deployment describing where the contract is deployed.

The target contract (Tx to or factory) MUST match one of those deployments.

Fields:
field address: validate, json_schema_input_type=PydanticUndefined)] [Required]

The deployment contract address.

Constraints:
  • min_length = 42

  • max_length = 42

  • pattern = ^0x[a-fA-F0-9]+$

  • func = <function ErrorTypeLabel._validator.<locals>.validate at 0x7f2974927240>

  • json_schema_input_type = PydanticUndefined

field chainId: int [Required]

The deployment EIP-155 chain id.

pydantic model erc7730.model.input.context.InputDomain[source]View on GitHub

Bases: Model

EIP 712 Domain Binding constraint.

Each value of the domain constraint MUST match the corresponding eip 712 message domain value.

Fields:
field chainId: int | None = None

The EIP-155 chain id.

field name: str | None = None

The EIP-712 domain name.

field verifyingContract: validate, json_schema_input_type=PydanticUndefined)] | None = None

The EIP-712 verifying contract address.

field version: str | None = None

The EIP-712 version.

pydantic model erc7730.model.input.context.InputEIP712[source]View on GitHub

Bases: InputBindingContext

EIP 712 Binding.

The EIP-712 binding context is a set of constraints that must be verified by the message being signed.

Fields:
field domain: InputDomain | None = None

Each value of the domain constraint MUST match the corresponding eip 712 message domain value.

field domainSeparator: str | None = None

The domain separator value that must be matched by the message. In hex string representation.

field schemas: list[EIP712Schema | HttpUrl] [Required]

Schemas of all messages.

pydantic model erc7730.model.input.context.InputEIP712Context[source]View on GitHub

Bases: Model

EIP 712 Binding.

The EIP-712 binding context is a set of constraints that must be verified by the message being signed.

Fields:
field eip712: InputEIP712 [Required]

The EIP-712 binding context is a set of constraints that must be verified by the message beingsigned.

field id: validate, json_schema_input_type=PydanticUndefined)] | None = None (alias '$id')

An internal identifier that can be used either for clarity specifying what the element is or as areference in device specific sections.

pydantic model erc7730.model.input.context.InputFactory[source]View on GitHub

Bases: Model

A factory constraint is used to check whether the target contract is deployed by a specified factory.

Fields:
field deployEvent: str [Required]

The event signature that the factory emits when deploying a new contract.

field deployments: list[InputDeployment] [Required]

An array of deployments describing where the contract is deployed. The target contract (Tx to orfactory) MUST match one of those deployments.