Skip to content

Commit 31e41ce

Browse files
authored
feat(docs): add setAllowedExecutor function details for minting tags (#1352)
1 parent 74b2e0e commit 31e41ce

3 files changed

Lines changed: 21 additions & 4 deletions

File tree

docs/fassets/03-direct-minting.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,15 +72,15 @@ The `MintingTagManager` contract on Flare manages the reservation and ownership
7272
- Tags are assigned sequentially.
7373
The user always receives the next available tag.
7474
- The contract implements the **ERC-721** (NFT) interface, so reserved tags can be transferred or resold.
75-
- Tag owners can set a preferred executor with `setAllowedExecutor`.
75+
- Tag owners can set a preferred executor with [`setAllowedExecutor`](/fassets/reference/IMintingTagManager#setallowedexecutor).
7676
Executor changes are not immediate: the new executor becomes active after a 10-minute cooldown to protect in-flight FDC proofs.
7777
- On initial reservation and tag transfer, the recipient resets to the new owner and the executor resets to the zero address.
7878

7979
## Executor Restrictions
8080

8181
Executors can be restricted in three ways depending on the minting method:
8282

83-
1. **Tag-based:** The tag manager's `setAllowedExecutor` method defines the allowed executor.
83+
1. **Tag-based:** The tag manager's [`setAllowedExecutor`](/fassets/reference/IMintingTagManager#setallowedexecutor) method defines the allowed executor.
8484
If set to the zero address, anyone can execute.
8585
2. **Memo-based:** The 48-byte memo format encodes the executor address directly.
8686
The 32-byte memo format does not specify an executor, so anyone can execute.

docs/fassets/developer-guides/6-fassets-direct-minting-tag.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ Compared to the [memo-based direct minting](/fassets/developer-guides/fassets-di
2424
- **One-time setup**: reserve a tag once via [`MintingTagManager`](/fassets/reference/IMintingTagManager) — pay the [`reservationFee`](/fassets/reference/IMintingTagManager#reservationfee) in native token and bind the recipient with [`setMintingRecipient`](/fassets/reference/IMintingTagManager#setmintingrecipient).
2525
- **Reusable**: every subsequent XRPL payment with the same destination tag routes to the bound recipient without rebuilding a memo.
2626
- **Transferable**: tags are [ERC-721 NFTs](https://ethereum.org/developers/docs/standards/tokens/erc-721/) and can be transferred to another owner with [`transfer`](/fassets/reference/IMintingTagManager#transfer).
27-
- **Optional preferred executor**: the tag owner may restrict execution via `setAllowedExecutor`.
27+
- **Optional preferred executor**: the tag owner may restrict execution via [`setAllowedExecutor`](/fassets/reference/IMintingTagManager#setallowedexecutor).
2828
After [`othersCanExecuteAfterSeconds`](/fassets/reference/IAssetManager#getdirectmintingotherscanexecuteafterseconds), anyone can finalize.
2929

3030
## Prerequisites
@@ -72,7 +72,7 @@ Compared to the [memo-based direct minting](/fassets/developer-guides/fassets-di
7272
- **Reservations cost native currency.**
7373
Tag reservation pays a fee in native token.
7474
Tags are assigned sequentially.
75-
- **Executor changes are not immediate.** After calling the `setAllowedExecutor` function, the new executor only becomes active after a 10-minute cooldown to protect in-flight FDC proofs.
75+
- **Executor changes are not immediate.** After calling the [`setAllowedExecutor`](/fassets/reference/IMintingTagManager#setallowedexecutor) function, the new executor only becomes active after a 10-minute cooldown to protect in-flight FDC proofs.
7676
See [Executor Restrictions](/fassets/direct-minting#executor-restrictions).
7777
- **Transferring a tag resets it.**
7878
When ownership changes, the recipient is reset to the new owner, and the executor is reset to the zero address.

docs/fassets/reference/IMintingTagManager.mdx

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,3 +120,20 @@ function allowedExecutor(uint256 _mintingTag) external view returns (address);
120120
#### Returns
121121

122122
- The address of the allowed executor, or `address(0)` if none is set.
123+
124+
### `setAllowedExecutor`
125+
126+
Set the allowed executor for a tag.
127+
Only callable by the tag owner.
128+
The allowed executor is the only address that can execute direct mintings with this tag.
129+
Setting an allowed executor is optional; if not set, anyone can execute mintings with the tag.
130+
Changes to the allowed executor are subject to a cooldown delay before they become active.
131+
132+
```solidity
133+
function setAllowedExecutor(uint256 _mintingTag, address _executor) external;
134+
```
135+
136+
#### Parameters
137+
138+
- `_mintingTag`: The minting tag ID.
139+
- `_executor`: The new allowed executor address (must not be the zero address).

0 commit comments

Comments
 (0)