โœ๏ธSignatory

The Signatory Component primarily controls signer/signature validation. It gives developers the flexibility to define who they want to be a valid signer.

The full contract code of the SignatoryComponent can be found here.

Functions

_base_signer_validation

fn _base_signer_validation(
  self: @ComponentState<TContractState>, 
  signer: ContractAddress
) -> bool;

This function implements a simple signer validation where only the NFT owner is a valid signer.

Parameters

Name
Type
Description

signer

ContractAddress

This is the address that is attempting to sign or perform actions on the TBA.

Returns

bool: Returnstrue if the signer is same as the owner and false otherwise.

_permissioned_signer_validation

This function implements a more complex signer validation where NFT owner, root owner, and permissioned addresses are valid signers.

Parameters

Name
Type
Description

signer

ContractAddress

This is the address that is attempting to sign or perform actions on the TBA.

Returns

bool: Returns true if the signer is either the owner, the root owner, or a permissioned address, returns false otherwise.

_is_valid_signature

This function checks whether a given digital signature is valid.

Returns

felt252: It returns VALIDATED If the signature is valid.

Last updated