-
#465
e913e0d
Thanks @adam-maj! - Fix passing options to factory -
5862c55
Thanks @kumaryash90! - update forwarder address -
#466
73883f5
Thanks @joaquim-verges! - workaround for signing typed data with magic.link signers -
#468
f7a74a3
Thanks @joaquim-verges! - Exposesdk.wallet.signTypedData()
-
#421
ea95c5f
Thanks @yehia67! - Add new utilities to parse/format currencies.toEther
&toWei
as default 18 decimal andtoUnits
&toDisplayValue
in case of different numbers of decimals. -
#456
699a2b1
Thanks @joaquim-verges! - [SOL] Fix claiming drops with custom currencies -
#458
4cdd0bd
Thanks @joaquim-verges! - Fixes for latest wallet package integration -
#453
a8267f9
Thanks @joaquim-verges! - [SOL] Drop fixes for large batch uploads
-
#451
3731459
Thanks @joaquim-verges! - Less strict prebuilt checks to support OSRF variants -
#450
cac6c30
Thanks @joaquim-verges! - Fix setting allowance or approvals gaslessly -
#448
7a37e56
Thanks @jnsdls! - [EVM] - allowuseContract
to fail faster to enable the import case
- #443
8c6cdaa
Thanks @joaquim-verges! - Fix signature minting from OpenSea Royalty Filter NFT collection contracts
- #440
efc56fa
Thanks @jnsdls! - [EVM] - providers are now re-used if the constructor options are identical leading to better batching, also introduced an additional max batch size param (250 by default)
-
#438
f451da6
Thanks @joaquim-verges! - Fix SigMint detection for OSRF NFT Collection contracts -
#424
1bfb91d
Thanks @joaquim-verges! - Improve error parsing for other wallets -
#434
def4251
Thanks @joaquim-verges! - [SOL] Remove workaround to fetch NFT owners -
#429
034a257
Thanks @jakeloo! - Extract more minimal proxy impl address -
#418
eca4776
Thanks @joaquim-verges! - Increase gas limit for opening packs -
Updated dependencies [
f451da6
]:- @thirdweb-dev/[email protected]
-
#408
48797c7
Thanks @jnsdls! - [EVM] - addGasless
as a possible extension to feature-detect -
#402
83dcaf7
Thanks @adam-maj! - Expose sdk.fromWallet and wallet classes -
#412
f03be39
Thanks @easonchai! - Correctly handle contracts using the SignatureMintERC1155 ContractKit extension -
#283
2eaa67a
Thanks @adam-maj! - AppURI detection now enabled -
#414
47f8945
Thanks @joaquim-verges! - Improve error parsing
-
#405
ccb7db4
Thanks @nachoiacovino! - Add updateAll param to creators and royalty update hooks for Solana -
#404
9151aa7
Thanks @jnsdls! - [EVM] - exposegetDefaultTrustedForwarders
helper function -
#305
5a01c53
Thanks @joaquim-verges! - Update to Metaplex 0.17
-
#398
15514f1
Thanks @jnsdls! - [EVM] - adddefaultValue
to constructorParams schema for releases -
#388
7c0744a
Thanks @adam-maj! - Add support for total supply and pagination on get all -
#395
f8bceec
Thanks @jnsdls! - [Solana] - fix claim condition reset to native token from custom -
#399
887af24
Thanks @jnsdls! - [EVM] - fix custom error handling for null-ish error values -
#390
96bd92e
Thanks @joaquim-verges! - [SDK] ExposegetAllDetectedFeatures(ABI)
helper function
- #364
7cb8e59
Thanks @joaquim-verges! - Enable new Drop contracts
-
#382
0ed77d2
Thanks @jnsdls! - AddconstructorParams
toExtraPublishMetadataSchemaInput
schema to support better deploys from releases. -
#385
04a47e8
Thanks @adam-maj! - Add retroactive royalty and creator setting
-
#380
3eba69a
Thanks @joaquim-verges! - Expose sdk.wallet.getChainId() -
#376
4af785c
Thanks @adam-maj! - Update tiered-drop with tokens claimed -
#373
6f818f3
Thanks @adam-maj! - Update tiered-drop contract version -
Updated dependencies [
4af785c
,6f818f3
]:- @thirdweb-dev/[email protected]
-
#368
4e7b293
Thanks @joaquim-verges! - Fix handling of old allowlist proof format -
#365
c9c0e4f
Thanks @jnsdls! - [EVM] - now React Native compatible
-
#329
5200d5d
Thanks @adam-maj! - ### Breaking changes:- claim conditions had some changes to support the new drop contracts:
maxClaimablePerTransaction
is now namedmaxClaimablePerWallet
maxQuantity
is now namedmaxClaimable
- signature minting now requires a
to
address to be set for security purposees
- Support for new optimized Drop contracts
- Support for new claim conditions with overrides
- Don't allow zero address recipient on signature minting
-
#362
42a6065
Thanks @joaquim-verges! - [SDK] Fix fetching NFTs with numbers as ids -
Updated dependencies [
aa6d9ed
]:- @thirdweb-dev/[email protected]
- #359
e731c1a
Thanks @joaquim-verges! - [SDK] Allow fetching claimerProofs from any claim condition
-
#353
1c24c3c
Thanks @nachoiacovino! - Add useUpdateCreators hook, fix CreatorInput schema -
#357
65fc7ba
Thanks @joaquim-verges! - Expose claimConditions.getClaimerProofs(address) to get allowlist information for a given address
-
#344
21c21c1
Thanks @nachoiacovino! - Update internal function resolveContractUriFromAddress -> resolveContractUriFromAddress -
#352
3522917
Thanks @joaquim-verges! - Expose marketplace.auction.executeSale(listingId)
- #343
72227b2
Thanks @joaquim-verges! - Expose general marketplace.makeOffer() function
-
#337
340605b
Thanks @adam-maj! - Clean native token address in listing -
#342
26116a6
Thanks @joaquim-verges! - Add new univeral RPC urls -
Updated dependencies [
ef27aad
]:- @thirdweb-dev/[email protected]
-
#332
ad851f7
Thanks @joaquim-verges! - Fix for finding addresses in legacy merkle tree format -
#330
6218c88
Thanks @joaquim-verges! - Fix deploying contracts with non-32 bytes parameters like bytes4
-
#315
89ff921
Thanks @furqanrydhan! - fixing vite, multihash moved to non lazy load + cbor-x instead of cbor-web -
#321
a57b4f0
Thanks @joaquim-verges! - [SDK] Implement sharded merkle trees for lightweight allowlist checksBehavior change
We've made allowlists much more performant using sharded merkle trees. This allows us to process large allowlists (1M+) efficiently.
To support those large allowlists, fetching claim conditions does not fetch the allowlist data by default anymore. Instead, you can pass an options object to additionally fetch the allowlist data along with the rest of the claim conditions data.
This affects
ClaimConditions.getActive()
andClaimConditions.getAll()
Examples:
const activeClaimCondition = await contract.erc721.claimConditions.getActive(); // `activeClaimCondition.snapshot` is undefined const activeclaimConditionWithtAllowList = await contract.erc721.claimConditions.getActive({ withAllowList: true, }); // `activeClaimCondition.snapshot` returns the allowlist data
-
#326
126752d
Thanks @jnsdls! - [EVM] - expose fn to get ipfs hash from bytecote publicly -
#328
df74340
Thanks @joaquim-verges! - Update cbor-x import to work with es2018 builds (embeds) -
Updated dependencies [
87fd6ab
]:- @thirdweb-dev/[email protected]
-
#312
b6eec61
Thanks @adam-maj! - Add quantity to mint additional supply -
#310
9727502
Thanks @nachoiacovino! - [SOL] - add useMintNFTSupply hook in react and accomodate inputs for it in SDK -
#307
782b58d
Thanks @kumaryash90! - fix multicall gasless -
#320
f41a443
Thanks @adam-maj! - Add update creators and update royalty -
#313
f45ef62
Thanks @joaquim-verges! - Return default metadata when failing to fetch a given tokenId on NFT contracts -
#319
2f8ec89
Thanks @joaquim-verges! - Expose total claimed and unclaimed supply for erc721 drop contracts -
#322
b7cd744
Thanks @joaquim-verges! - [SOL] Allow signing multiple claims at once -
#306
53c6507
Thanks @adam-maj! - Add contract deploy listener
- #303
712b11a
Thanks @joaquim-verges! - [SOL] Fix getting real NFT owners
-
#289
521a49c
Thanks @nachoiacovino! - Standarize useClaimNFT to evm -
#293
8b3b97c
Thanks @joaquim-verges! - [SOL] Fix getAllClaimed for NFT Drops -
#286
25a4773
Thanks @joaquim-verges! - [SOL] Add pagination for nftCollection.getAll() -
#269
b2cadf1
Thanks @jnsdls! - [EVM] - remove deprecated chains from support -
#263
d6bb61b
Thanks @jnsdls! - [Solana] - aligngetProgram
withgetContract
from EVM -
#297
78d6d3c
Thanks @jnsdls! - [SOL] - fix getAddress to return undefined if wallet is not connected -
#294
89d87a5
Thanks @jnsdls! - [SOL] - batch uploads for NFT drop to satisfy solana size limits -
#270
41507d3
Thanks @joaquim-verges! - [SOL] Add to registry when deploying new programs -
#290
8096c78
Thanks @jnsdls! - [SOL] - makeclaim()
take a typeofAmount
instead ofnumber
-
#273
b1fa171
Thanks @joaquim-verges! - [Solana] Expose maxClaimable for claim conditions and disallow claiming by default -
#280
18381fa
Thanks @ElasticBottle! - Fix errorneous ERC20 Allowance check -
#263
d6bb61b
Thanks @jnsdls! - [EVM] - add chainId getter on contracts -
#296
cf88795
Thanks @jnsdls! - [SOL] - add network to userwallet -
#285
89b5c6f
Thanks @joaquim-verges! - [SOL] Make creating NFTDrop transactions sequential
-
#247
caf9795
Thanks @furqanrydhan! - AppURI detection now enabled -
#238
6647f70
Thanks @joaquim-verges! - Unify NFT return types for EVM and SolanaThis is a transparent upgrade, except for one type change for ERC1155 NFTs
- nft.id is now of type
string
instead ofBigNumber
- edition.supply is now of type
number
instead ofBigNumber
This should make it much easer to deal with in applications, instead of having to manipulate BigNumber objects.
Most people convert BigNumber to strings, which is compatible with this upgrade.
- nft.id is now of type
-
#257
ba6f450
Thanks @jnsdls! - [EVM] - fix permission enumerable export -
#261
c8261b7
Thanks @jnsdls! - [EVM] - align behavior ofuseContract()
andgetContract()
across react & sdk to both allow passing optional second params of contract types or ABIs -
#250
20745f8
Thanks @nachoiacovino! - Add check if abi exists on extractFunctionsFromAbi function -
#252
2ea3f00
Thanks @joaquim-verges! - Expose a way to update collection settings, pass in upload options to lazyMint -
#234
9412d41
Thanks @joaquim-verges! - [SOL] Add burn NFT functionality + misc API refinement -
#256
d677e9d
Thanks @jnsdls! - [EVM] - make PermissiosEnumerable feature available -
#240
e662408
Thanks @jnsdls! - unify program metadata return type -
#249
e4b10bc
Thanks @joaquim-verges! - [SOL] Update NFT Drop API for claim conditions + multiple fixes -
#245
1972f3e
Thanks @jnsdls! - [SOL] - allow burning of drop'd NFTs -
#236
cac373b
Thanks @jnsdls! - [SOL] - attempt to resolve network more agressively
-
#191
8239763
Thanks @mykcryptodev! - Get all offers for a listing -
#194
27a30e3
Thanks @aeither! - Add ability to view and update owner of a contract -
#226
f2a6211
Thanks @jnsdls! - [EVM] shrink size by importing TWProxy__factory individually -
#232
d26b768
Thanks @joaquim-verges! - [SOL] Dynamic imports for anchor programs -
#182
ba7dcbb
Thanks @jnebab! - added getMinimumNextBid function in marketplace contract to get the minimum bid a user can place to outbid the previous highest bid -
#229
9c8a3fb
Thanks @joaquim-verges! - [SOL] Allow passing a quantity to claim, and new claimTo function -
Updated dependencies [
f2a6211
,f2a6211
]:- @thirdweb-dev/[email protected]
- @thirdweb-dev/[email protected]
-
#222
666ff5f
Thanks @joaquim-verges! - [SOL] expose ThirdwebSDK.fromPrivateKey() -
#224
0dade96
Thanks @joaquim-verges! - [EVM] Ensure that factory/proxy flags are set before deploying via proxy
- #213
e187d21
Thanks @joaquim-verges! - new @thirdweb-dev/sdk/solana entrypoint
-
#217
3c8f620
Thanks @joaquim-verges! - Enable proxy deploys for released contracts -
#206
acbabc8
Thanks @kumaryash90! - Gas override for relayer txns -
#216
b030a86
Thanks @kumaryash90! - Update addresses
- #205
ce05bfd
Thanks @joaquim-verges! - Fix Buffer usage in SDK
- #199
5f5ab01
Thanks @joaquim-verges! - Fix getOwned for signature drop
-
#195
a80fc97
Thanks @jnsdls! - add missing roles for pre-built contracts -
Updated dependencies [
24f66e3
]:- @thirdweb-dev/[email protected]
-
#167
4169b94
Thanks @joaquim-verges! - Syntax changes for react native support -
#174
3b877ba
Thanks @kumaryash90! - detect forwarder address for defender -
#163
b54f95d
Thanks @adam-maj! - Use independent JSON types by package -
#154
f8ab477
Thanks @jnsdls! - Add fiat checkout to nft-drop, edition-drop and signature-drop -
#162
772f843
Thanks @joaquim-verges! - Catch gas estimate errors in gasless tx -
#168
208b038
Thanks @jnsdls! - Switch naming of exported prebuilt contract types back from<name>Impl
to<name>
for easier use -
#161
5345479
Thanks @joaquim-verges! - Allow forcing direct deploys to deploy implementations from release flow -
Updated dependencies [
493ebf0
,b54f95d
,cfe8bba
,f4074dd
,d608cea
,3580182
,0ccbca7
,45a400f
]:- @thirdweb-dev/[email protected]
- Updated dependencies [
964add6
]:- @thirdweb-dev/[email protected]
-
#143
51dde28
Thanks @joaquim-verges! - Fix using external signers with ThirdwebSDKProvider -
#133
9d74a43
Thanks @joaquim-verges! - Make contract events data generic for better DX -
#135
b234c58
Thanks @jnsdls! - add a new StaticJsonRpcBatchProvider to stop callingeth_getChainId
when possible -
Updated dependencies [
57432d2
]:- @thirdweb-dev/[email protected]
-
#131
42c79e9
Thanks @joaquim-verges! - Fix editing releases from the dashboard -
#124
fe8751e
Thanks @joaquim-verges! - Add feature detection for Ownable
- #122
98dd64a
Thanks @joaquim-verges! - handle legacy claim method signature in extensions
-
#19
82627ea
Thanks @joaquim-verges! - 3.0.0 update- 85% reduction in package size!
- Custom contracts are now first class citizens
- Getting contracts is now async. This allows dynamically importing contracts and reduces the weight of the SDK significantly.
before:
const token = sdk.getToken(...) const nftDrop = sdk.getNFTDrop(...)
after:
const token = await sdk.getToken(...) const nftDrop = await sdk.getNFTDrop(...)
- New Extension API for custom contracts
When working with custom contracts using
await sdk.getContract(...)
, we now expose all the convenient high level APIs for each ERC standard top level. Calling a function that is not supported in your contract will give you an error with instructions on how to unlock that functionality.before:
const contract = await sdk.getContract(...) // ERC721 contracts const contract.nft?.drop?.claim?.to(...) const contract.nft?.drop?.claim?.conditions.set(...) // ERC1155 contracts const contract.edition?.mint?.to(...) // ERC20 contracts const contract.token?.burn.tokens(...)
after:
const contract = await sdk.getContract(...) // ERC721 contracts const contract.erc721.claimTo(...) const contract.erc721.claimConditions.set(...) // ERC1155 contracts const contract.erc1155.mintTo(...) // ERC20 contracts const contract.erc20.burn(...)
-
#99
a70b590
Thanks @jnsdls! - do not prompt to deploy again if user rejected the first call -
#115
a37bc00
Thanks @jnsdls! - addsales
module to token pre-built contract -
#111
b442c97
Thanks @nachoiacovino! - Use Enumerable to getOwned NFTs if no Supply extension found -
#106
0fa6f3f
Thanks @jnsdls! - add "events" to token-drop, make "getBuiltInContract" async properly -
#91
2adb8ff
Thanks @kumaryash90! - Add arbitrum and optimism goerli; rename testnets -
#108
5a5bc36
Thanks @kumaryash90! - function for adding contents to pack -
#90
820a519
Thanks @joaquim-verges! - Expose ERC721/1155Claimable detected extensions -
#106
0fa6f3f
Thanks @jnsdls! - make prebuilt contracts entirely async -
Updated dependencies [
820a519
]:- @thirdweb-dev/[email protected]
-
#74
baa87a1
Thanks @nkrishang! - Updated forwarder address for Goerli -
#75
4079326
Thanks @jnsdls! - add a default for factory deployments initializer function ("initialize") -
#71
05353fd
Thanks @joaquim-verges! - Allow for chain agnostic gasless tx -
Updated dependencies [
f2bdf47
]:- @thirdweb-dev/[email protected]
-
#61
3287c2b
Thanks @jnsdls! - fix versions in dependencies before releasing stable -
Updated dependencies [
3287c2b
]:- @thirdweb-dev/[email protected]
- @thirdweb-dev/[email protected]
-
#59
6ba9cad
Thanks @jnsdls! - moveabis
from top level intodist
in contracts-js -
Updated dependencies [
6ba9cad
]:- @thirdweb-dev/[email protected]
-
Updated dependencies [
5644ccd
]:- @thirdweb-dev/[email protected]
- @thirdweb-dev/[email protected]
-
Updated dependencies [
091f175
]:- @thirdweb-dev/[email protected]
- @thirdweb-dev/[email protected]
- Updated dependencies [
924247a
,924247a
]:- @thirdweb-dev/[email protected]
- @thirdweb-dev/[email protected]
-
#49
e59735b
Thanks @joaquim-verges! - Added ContractEncoder to custom contracts -contract.encoder
-
#52
2eb7e94
Thanks @joaquim-verges! - Support for audited Pack contract -
Updated dependencies [
2eb7e94
]:- @thirdweb-dev/[email protected]
-
#45
ed639d6
Thanks @jnsdls! - switch back to preconstruct for building -
#46
349b5c1
Thanks @jnsdls! - imrprove babel & tsconfig settings -
#34
5731ac2
Thanks @jnsdls! - fix build for CRA and vite builds (replacedcbor
dependency withcbor-web
) -
Updated dependencies [
127bc50
,ed639d6
,349b5c1
,c52a43c
,46ad691
,5731ac2
]:- @thirdweb-dev/[email protected]
- @thirdweb-dev/[email protected]
- 02c2b52: force version
- Updated dependencies [02c2b52]
- @thirdweb-dev/[email protected]
- 3abe26c: initialze monorepo packages
- Updated dependencies [3abe26c]
- @thirdweb-dev/[email protected]
- @thirdweb-dev/[email protected]
- d4abb09: Add support for Binance chains (BSC)
- 274afb5: make input/output versions of the release metadata schemas
- 86e3b58: use storage helpers from @thirdweb-dev/storage
- 0c78b16: Fix listening to a single contract event
- Updated dependencies [86e3b58]
- @thirdweb-dev/[email protected]