Skip to content

Commit 1c29c74

Browse files
committed
update docs
1 parent 9aa7601 commit 1c29c74

File tree

5 files changed

+184
-187
lines changed

5 files changed

+184
-187
lines changed

docs/ERC1155DelayedReveal.md

+37-39
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55

66

7-
BASE: ERC1155Base EXTENSION: LazyMint, DelayedReveal The `ERC1155DelayedReveal` contract uses the `ERC1155Base` contract, along with the `LazyMint` and `DelayedReveal` extension. 'Lazy minting' means defining the metadata of NFTs without minting it to an address. Regular 'minting' of NFTs means actually assigning an owner to an NFT. As a contract admin, this lets you prepare the metadata for NFTs that will be minted by an external party, without paying the gas cost for actually minting the NFTs. 'Delayed reveal' is a mechanism by which you can distribute NFTs to your audience and reveal the metadata of the distributed NFTs, after the fact. You can read more about how the `DelayedReveal` extension works, here: https://blog.thirdweb.com/delayed-reveal-nfts
7+
BASE: ERC1155LazyMint EXTENSION: DelayedReveal The `ERC1155DelayedReveal` contract uses the `DelayedReveal` extension. 'Lazy minting' means defining the metadata of NFTs without minting it to an address. Regular 'minting' of NFTs means actually assigning an owner to an NFT. As a contract admin, this lets you prepare the metadata for NFTs that will be minted by an external party, without paying the gas cost for actually minting the NFTs. 'Delayed reveal' is a mechanism by which you can distribute NFTs to your audience and reveal the metadata of the distributed NFTs, after the fact. You can read more about how the `DelayedReveal` extension works, here: https://blog.thirdweb.com/delayed-reveal-nfts
88

99

1010

@@ -56,25 +56,6 @@ function balanceOfBatch(address[] accounts, uint256[] ids) external view returns
5656
|---|---|---|
5757
| _0 | uint256[] | undefined |
5858

59-
### batchMintTo
60-
61-
```solidity
62-
function batchMintTo(address _to, uint256[] _tokenIds, uint256[] _amounts, string) external nonpayable
63-
```
64-
65-
Lets an authorized address mint multiple lazy minted NFTs at once to a recipient.
66-
67-
*The logic in the `_canMint` function determines whether the caller is authorized to mint NFTs.*
68-
69-
#### Parameters
70-
71-
| Name | Type | Description |
72-
|---|---|---|
73-
| _to | address | The recipient of the NFT to mint. |
74-
| _tokenIds | uint256[] | The tokenIds of the NFTs to mint. |
75-
| _amounts | uint256[] | The amounts of each NFT to mint. |
76-
| _3 | string | undefined |
77-
7859
### burn
7960

8061
```solidity
@@ -111,6 +92,24 @@ Lets an owner or approved operator burn NFTs of the given tokenIds.
11192
| _tokenIds | uint256[] | The tokenIds of the NFTs to burn. |
11293
| _amounts | uint256[] | The amounts of the NFTs to burn. |
11394

95+
### claim
96+
97+
```solidity
98+
function claim(address _receiver, uint256 _tokenId, uint256 _quantity) external payable
99+
```
100+
101+
Lets an address claim multiple lazy minted NFTs at once to a recipient. Contract creators should override this function to create custom logic for claiming, for e.g. price collection, allowlist, max quantity, etc.
102+
103+
*The logic in the `verifyClaim` function determines whether the caller is authorized to mint NFTs.*
104+
105+
#### Parameters
106+
107+
| Name | Type | Description |
108+
|---|---|---|
109+
| _receiver | address | The recipient of the tokens to mint. |
110+
| _tokenId | uint256 | The tokenId of the lazy minted NFT to mint. |
111+
| _quantity | uint256 | The number of tokens to mint. |
112+
114113
### contractURI
115114

116115
```solidity
@@ -345,25 +344,6 @@ Lets an authorized address lazy mint a given amount of NFTs.
345344
|---|---|---|
346345
| batchId | uint256 | A unique integer identifier for the batch of NFTs lazy minted together. |
347346

348-
### mintTo
349-
350-
```solidity
351-
function mintTo(address _to, uint256 _tokenId, string, uint256 _amount) external nonpayable
352-
```
353-
354-
Lets an authorized address mint lazy minted NFTs to a recipient.
355-
356-
*- The logic in the `_canMint` function determines whether the caller is authorized to mint NFTs.*
357-
358-
#### Parameters
359-
360-
| Name | Type | Description |
361-
|---|---|---|
362-
| _to | address | The recipient of the NFTs to mint. |
363-
| _tokenId | uint256 | The tokenId of the lazy minted NFT to mint. |
364-
| _2 | string | undefined |
365-
| _amount | uint256 | The amount of the same NFT to mint. |
366-
367347
### multicall
368348

369349
```solidity
@@ -691,6 +671,24 @@ Returns the metadata URI for an NFT.
691671
|---|---|---|
692672
| _0 | string | undefined |
693673

674+
### verifyClaim
675+
676+
```solidity
677+
function verifyClaim(address _claimer, uint256 _tokenId, uint256 _quantity) external view
678+
```
679+
680+
Override this function to add logic for claim verification, based on conditions such as allowlist, price, max quantity etc.
681+
682+
*Checks a request to claim NFTs against a custom condition.*
683+
684+
#### Parameters
685+
686+
| Name | Type | Description |
687+
|---|---|---|
688+
| _claimer | address | Caller of the claim function. |
689+
| _tokenId | uint256 | The tokenId of the lazy minted NFT to mint. |
690+
| _quantity | uint256 | The number of NFTs being claimed. |
691+
694692

695693

696694
## Events

docs/ERC1155LazyMint.md

+38-40
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55

66

7-
BASE: ERC1155Base EXTENSION: LazyMint The `ERC1155LazyMint` contract uses the `ERC1155Base` contract, along with the `LazyMint` extension. 'Lazy minting' means defining the metadata of NFTs without minting it to an address. Regular 'minting' of NFTs means actually assigning an owner to an NFT. As a contract admin, this lets you prepare the metadata for NFTs that will be minted by an external party, without paying the gas cost for actually minting the NFTs.
7+
BASE: ERC1155Base EXTENSION: LazyMint The `ERC1155LazyMint` smart contract implements the ERC1155 NFT standard. It includes the following additions to standard ERC1155 logic: - Lazy minting - Ability to mint NFTs via the provided `mintTo` and `batchMintTo` functions. - Contract metadata for royalty support on platforms such as OpenSea that use off-chain information to distribute roaylties. - Ownership of the contract, with the ability to restrict certain functions to only be called by the contract's owner. - Multicall capability to perform multiple actions atomically - EIP 2981 compliance for royalty support on NFT marketplaces. The `ERC1155LazyMint` contract uses the `LazyMint` extension. 'Lazy minting' means defining the metadata of NFTs without minting it to an address. Regular 'minting' of NFTs means actually assigning an owner to an NFT. As a contract admin, this lets you prepare the metadata for NFTs that will be minted by an external party, without paying the gas cost for actually minting the NFTs.
88

99

1010

@@ -56,25 +56,6 @@ function balanceOfBatch(address[] accounts, uint256[] ids) external view returns
5656
|---|---|---|
5757
| _0 | uint256[] | undefined |
5858

59-
### batchMintTo
60-
61-
```solidity
62-
function batchMintTo(address _to, uint256[] _tokenIds, uint256[] _amounts, string) external nonpayable
63-
```
64-
65-
Lets an authorized address mint multiple lazy minted NFTs at once to a recipient.
66-
67-
*The logic in the `_canMint` function determines whether the caller is authorized to mint NFTs.*
68-
69-
#### Parameters
70-
71-
| Name | Type | Description |
72-
|---|---|---|
73-
| _to | address | The recipient of the NFT to mint. |
74-
| _tokenIds | uint256[] | The tokenIds of the NFTs to mint. |
75-
| _amounts | uint256[] | The amounts of each NFT to mint. |
76-
| _3 | string | undefined |
77-
7859
### burn
7960

8061
```solidity
@@ -111,6 +92,24 @@ Lets an owner or approved operator burn NFTs of the given tokenIds.
11192
| _tokenIds | uint256[] | The tokenIds of the NFTs to burn. |
11293
| _amounts | uint256[] | The amounts of the NFTs to burn. |
11394

95+
### claim
96+
97+
```solidity
98+
function claim(address _receiver, uint256 _tokenId, uint256 _quantity) external payable
99+
```
100+
101+
Lets an address claim multiple lazy minted NFTs at once to a recipient. Contract creators should override this function to create custom logic for claiming, for e.g. price collection, allowlist, max quantity, etc.
102+
103+
*The logic in the `verifyClaim` function determines whether the caller is authorized to mint NFTs.*
104+
105+
#### Parameters
106+
107+
| Name | Type | Description |
108+
|---|---|---|
109+
| _receiver | address | The recipient of the tokens to mint. |
110+
| _tokenId | uint256 | The tokenId of the lazy minted NFT to mint. |
111+
| _quantity | uint256 | The number of tokens to mint. |
112+
114113
### contractURI
115114

116115
```solidity
@@ -255,25 +254,6 @@ Lets an authorized address lazy mint a given amount of NFTs.
255254
|---|---|---|
256255
| batchId | uint256 | A unique integer identifier for the batch of NFTs lazy minted together. |
257256

258-
### mintTo
259-
260-
```solidity
261-
function mintTo(address _to, uint256 _tokenId, string, uint256 _amount) external nonpayable
262-
```
263-
264-
Lets an authorized address mint lazy minted NFTs to a recipient.
265-
266-
*- The logic in the `_canMint` function determines whether the caller is authorized to mint NFTs.*
267-
268-
#### Parameters
269-
270-
| Name | Type | Description |
271-
|---|---|---|
272-
| _to | address | The recipient of the NFTs to mint. |
273-
| _tokenId | uint256 | The tokenId of the lazy minted NFT to mint. |
274-
| _2 | string | undefined |
275-
| _amount | uint256 | The amount of the same NFT to mint. |
276-
277257
### multicall
278258

279259
```solidity
@@ -542,7 +522,7 @@ function totalSupply(uint256) external view returns (uint256)
542522

543523
Returns the total supply of NFTs of a given tokenId
544524

545-
525+
*Mapping from tokenId => total circulating supply of NFTs of that tokenId.*
546526

547527
#### Parameters
548528

@@ -578,6 +558,24 @@ Returns the metadata URI for the given tokenId.
578558
|---|---|---|
579559
| _0 | string | undefined |
580560

561+
### verifyClaim
562+
563+
```solidity
564+
function verifyClaim(address _claimer, uint256 _tokenId, uint256 _quantity) external view
565+
```
566+
567+
Override this function to add logic for claim verification, based on conditions such as allowlist, price, max quantity etc.
568+
569+
*Checks a request to claim NFTs against a custom condition.*
570+
571+
#### Parameters
572+
573+
| Name | Type | Description |
574+
|---|---|---|
575+
| _claimer | address | Caller of the claim function. |
576+
| _tokenId | uint256 | The tokenId of the lazy minted NFT to mint. |
577+
| _quantity | uint256 | The number of NFTs being claimed. |
578+
581579

582580

583581
## Events

docs/ERC721DelayedReveal.md

+46-54
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55

66

7-
BASE: ERC721Base EXTENSION: LazyMint, DelayedReveal The `ERC721DelayedReveal` contract uses the `ERC721Base` contract, along with the `LazyMint` and `DelayedReveal` extension. 'Lazy minting' means defining the metadata of NFTs without minting it to an address. Regular 'minting' of NFTs means actually assigning an owner to an NFT. As a contract admin, this lets you prepare the metadata for NFTs that will be minted by an external party, without paying the gas cost for actually minting the NFTs. 'Delayed reveal' is a mechanism by which you can distribute NFTs to your audience and reveal the metadata of the distributed NFTs, after the fact. You can read more about how the `DelayedReveal` extension works, here: https://blog.thirdweb.com/delayed-reveal-nfts
7+
BASE: ERC721LazyMint EXTENSION: DelayedReveal The `ERC721DelayedReveal` contract uses the `ERC721LazyMint` contract, along with `DelayedReveal` extension. 'Lazy minting' means defining the metadata of NFTs without minting it to an address. Regular 'minting' of NFTs means actually assigning an owner to an NFT. As a contract admin, this lets you prepare the metadata for NFTs that will be minted by an external party, without paying the gas cost for actually minting the NFTs. 'Delayed reveal' is a mechanism by which you can distribute NFTs to your audience and reveal the metadata of the distributed NFTs, after the fact. You can read more about how the `DelayedReveal` extension works, here: https://blog.thirdweb.com/delayed-reveal-nfts
88

99

1010

@@ -49,40 +49,38 @@ function balanceOf(address owner) external view returns (uint256)
4949
|---|---|---|
5050
| _0 | uint256 | undefined |
5151

52-
### batchMintTo
52+
### burn
5353

5454
```solidity
55-
function batchMintTo(address _to, uint256 _quantity, string, bytes _data) external nonpayable
55+
function burn(uint256 _tokenId) external nonpayable
5656
```
5757

58-
Lets an authorized address mint multiple lazy minted NFTs at once to a recipient.
58+
Lets an owner or approved operator burn the NFT of the given tokenId.
5959

60-
*The logic in the `_canMint` function determines whether the caller is authorized to mint NFTs.*
60+
*ERC721A's `_burn(uint256,bool)` internally checks for token approvals.*
6161

6262
#### Parameters
6363

6464
| Name | Type | Description |
6565
|---|---|---|
66-
| _to | address | The recipient of the NFT to mint. |
67-
| _quantity | uint256 | The number of NFTs to mint. |
68-
| _2 | string | undefined |
69-
| _data | bytes | Additional data to pass along during the minting of the NFT. |
66+
| _tokenId | uint256 | The tokenId of the NFT to burn. |
7067

71-
### burn
68+
### claim
7269

7370
```solidity
74-
function burn(uint256 _tokenId) external nonpayable
71+
function claim(address _receiver, uint256 _quantity) external payable
7572
```
7673

77-
Lets an owner or approved operator burn the NFT of the given tokenId.
74+
Lets an address claim multiple lazy minted NFTs at once to a recipient. Contract creators should override this function to create custom logic for claiming, for e.g. price collection, allowlist, max quantity, etc.
7875

79-
*ERC721A's `_burn(uint256,bool)` internally checks for token approvals.*
76+
*The logic in the `verifyClaim` function determines whether the caller is authorized to mint NFTs.*
8077

8178
#### Parameters
8279

8380
| Name | Type | Description |
8481
|---|---|---|
85-
| _tokenId | uint256 | The tokenId of the NFT to burn. |
82+
| _receiver | address | The recipient of the NFT to mint. |
83+
| _quantity | uint256 | The number of NFTs to mint. |
8684

8785
### contractURI
8886

@@ -294,29 +292,6 @@ function isApprovedForAll(address owner, address operator) external view returns
294292
|---|---|---|
295293
| _0 | bool | undefined |
296294

297-
### isApprovedOrOwner
298-
299-
```solidity
300-
function isApprovedOrOwner(address _operator, uint256 _tokenId) external view returns (bool isApprovedOrOwnerOf)
301-
```
302-
303-
Returns whether a given address is the owner, or approved to transfer an NFT.
304-
305-
306-
307-
#### Parameters
308-
309-
| Name | Type | Description |
310-
|---|---|---|
311-
| _operator | address | undefined |
312-
| _tokenId | uint256 | undefined |
313-
314-
#### Returns
315-
316-
| Name | Type | Description |
317-
|---|---|---|
318-
| isApprovedOrOwnerOf | bool | undefined |
319-
320295
### isEncryptedBatch
321296

322297
```solidity
@@ -363,23 +338,6 @@ Lets an authorized address lazy mint a given amount of NFTs.
363338
|---|---|---|
364339
| batchId | uint256 | A unique integer identifier for the batch of NFTs lazy minted together. |
365340

366-
### mintTo
367-
368-
```solidity
369-
function mintTo(address _to, string) external nonpayable
370-
```
371-
372-
Lets an authorized address mint a lazy minted NFT to a recipient.
373-
374-
*The logic in the `_canMint` function determines whether the caller is authorized to mint NFTs.*
375-
376-
#### Parameters
377-
378-
| Name | Type | Description |
379-
|---|---|---|
380-
| _to | address | The recipient of the NFT to mint. |
381-
| _1 | string | undefined |
382-
383341
### multicall
384342

385343
```solidity
@@ -419,6 +377,23 @@ function name() external view returns (string)
419377
|---|---|---|
420378
| _0 | string | undefined |
421379

380+
### nextTokenIdToClaim
381+
382+
```solidity
383+
function nextTokenIdToClaim() external view returns (uint256)
384+
```
385+
386+
The tokenId assigned to the next new NFT to be claimed.
387+
388+
389+
390+
391+
#### Returns
392+
393+
| Name | Type | Description |
394+
|---|---|---|
395+
| _0 | uint256 | undefined |
396+
422397
### nextTokenIdToMint
423398

424399
```solidity
@@ -739,6 +714,23 @@ function transferFrom(address from, address to, uint256 tokenId) external nonpay
739714
| to | address | undefined |
740715
| tokenId | uint256 | undefined |
741716

717+
### verifyClaim
718+
719+
```solidity
720+
function verifyClaim(address _claimer, uint256 _quantity) external view
721+
```
722+
723+
Override this function to add logic for claim verification, based on conditions such as allowlist, price, max quantity etc.
724+
725+
*Checks a request to claim NFTs against a custom condition.*
726+
727+
#### Parameters
728+
729+
| Name | Type | Description |
730+
|---|---|---|
731+
| _claimer | address | Caller of the claim function. |
732+
| _quantity | uint256 | The number of NFTs being claimed. |
733+
742734

743735

744736
## Events

0 commit comments

Comments
 (0)