Permissionable
The Permissionable component is primarily used to set permissions for authorized addresses to carry out specific actions.
By leveraging this component, developers can build applications where users maintain control over key functions while safely delegating specific tasks to other addresses. Permissioned addresses can also play a minimal role of guardians.
The full contract code of the PermissionableComponent can be found here.
Functions
_set_permission
_set_permissionfn _set_permission(
ref self: ComponentState<TContractState>,
permissioned_addresses: Array<ContractAddress>,
permissions: Array<bool>
);This function assigns or revokes a specific permission to an address for a particular profile.
Parameters
permissioned_addresses
Array<ContractAddress>
An array of addresses that need permission updates. The length of this array must match the length of the permissions array
permissions
Array<bool>
A corresponding array of boolean values where true grants permission and false revokes.
_has_permission
_has_permissionfn _has_permission(
self: @ComponentState<TContractState>,
owner: ContractAddress,
permissioned_address: ContractAddress
) -> bool
This function checks whether a specific permissioned_address has been granted permission by the given account owner.
Parameters
owner
ContractAddress
An instance of the component.
permissioned_address
ContractAddress
The interface ID to be checked against.
Returns
bool: returns true if the permissioned_address has been granted permission by the ownerand false if the permissioned_address has no permission.
Last updated