Skip to content

Releases: thirdweb-dev/js

thirdweb@5.44.0

06 Aug 00:17
34e6f69
Compare
Choose a tag to compare

Minor Changes

  • c9e14e3 Thanks @jnsdls! - Adds telegram login option for in-app wallets

    import { inAppWallet } from "thirdweb";
    
    const wallet = inAppWallet();
    
    await wallet.connect({
      strategy: "telegram",
    });

Patch Changes

  • c9e14e3 Thanks @jnsdls! - Added Celo Alfajores Testnet within the chain-definitions

  • c9e14e3 Thanks @jnsdls! - Add type field on DirectListing and EnglishAuction types.

thirdweb@5.43.2

01 Aug 20:15
4dea4ba
Compare
Choose a tag to compare

Patch Changes

thirdweb@5.43.1

01 Aug 06:37
94f5ed6
Compare
Choose a tag to compare

Patch Changes

thirdweb@5.43.0

31 Jul 18:58
f925451
Compare
Choose a tag to compare

Minor Changes

  • #3875 337c8c9 Thanks @jnsdls! - add German localization

  • #3881 e7d6161 Thanks @kien-ngo! - Add CreateDirectListing button for Marketplace v3

    import { CreateDirectListingButton } from "thirdweb/react";
    
    <CreateDirectListingButton
      contractAddress="0x..." // contract address for the marketplace-v3
      chain={...} // the chain which the marketplace contract is deployed on
    
      // These props below are the same props for `createListing`
      // to get the full list, check the docs link above
      tokenId={0n}
      assetContractAddress="0x..." // The NFT contract address whose NFT(s) you want to sell
      pricePerToken={"0.1"} // sell for 0.1 <native token>
    >
      Sell NFT
    </CreateDirectListingButton>

Patch Changes

thirdweb@5.42.0

30 Jul 02:37
195064a
Compare
Choose a tag to compare

Minor Changes

  • #3847 e27ebef Thanks @kien-ngo! - Add prebuilt component: BuyDirectListingButton for Marketplace v3

    import { BuyDirectListingButton } from "thirdweb/react";
    
    <BuyDirectListingButton
      contractAddress="0x..." // contract address of the marketplace v3
      chain={...} // the chain which the marketplace contract is deployed on
      client={...} // thirdweb client
      listingId={100n} // the listingId or the item you want to buy
      quantity={1n} // optional - see the docs to learn more
    >
      Buy NFT
    </BuyDirectListingButton>
  • #3857 d5e5467 Thanks @gregfromstl! - Adds useChainMetadata to retrieve metadata for a chain such as name, icon, available faucets, block explorers, etc.

    import { useChainMetadata } from "thirdweb/react";
    
    const { data: chainMetadata } = useChainMetadata(defineChain(11155111));
    
    console.log("Name:", chainMetadata.name); // Sepolia
    console.log("Faucets:", chainMetadata.faucets); // ["https://thirdweb.com/sepolia/faucet"]
    console.log("Explorers:", chainMetadata.explorers); // ["https://sepolia.etherscan.io/"]

Patch Changes

  • #3846 cdb2970 Thanks @kien-ngo! - Handle ERC20 approval for the ClaimButton

  • #3843 91edae5 Thanks @kien-ngo! - Expose multicall & erc1155:encodeSafeTransferFrom extension

  • #3867 109575e Thanks @gregfromstl! - Fix wallet social login button styling

  • #3854 7ec421f Thanks @kien-ngo! - Add util function: parseAbiParams

    import { parseAbiParams } from "thirdweb/utils";
    
    const example1 = parseAbiParams(
      ["address", "uint256"],
      ["0x.....", "1200000"],
    ); // result: ["0x......", 1200000n]
  • #3869 bd44ce9 Thanks @joaquim-verges! - Export more wallet creation and connection types

thirdweb@5.41.0

27 Jul 21:16
4f539ad
Compare
Choose a tag to compare

Minor Changes

  • #3827 b0a303d Thanks @gregfromstl! - Adds SIWF for in-app wallets

    await wallet.connect({
      strategy: "farcaster",
      client: CLIENT,
    });

Patch Changes

thirdweb@5.40.0

26 Jul 09:33
9eea6e1
Compare
Choose a tag to compare

Minor Changes

  • #3750 4a4a061 Thanks @joaquim-verges! - New PayEmbed modes and revamp TransactionButton flow

    You can now configure the PayEmbed component to build 3 different flows:

    • Fund wallets: Inline component that allows users to buy any currency. (default)
    <PayEmbed
      client={client}
      payOptions={{
        mode: "fund_wallet",
      }}
    />
    • Direct payments: Take payments from Fiat or Crypto directly to your seller wallet.
    <PayEmbed
      client={client}
      payOptions={{
        mode: "direct_payment",
        paymentInfo: {
          sellerAddress: "0x...",
          chain: base,
          amount: "0.1",
        },
        metadata: {
          name: "Black Hoodie (Size L)",
          image: "https://example.com/image.png",
        },
      }}
    />
    • Transaction payments: Let your users pay for onchain transactions with fiat or crypto on any chain.
    <PayEmbed
      client={client}
      payOptions={{
        mode: "transaction",
        transaction: claimTo({
          contract,
          tokenId: 0n,
          to: toAddress,
        }),
        metadata: nft?.metadata,
      }}
    />

    You can also configure the TransactionButton component to show metadata to personalize the transaction payment flow:

    <TransactionButton
      transaction={() => {
        return transfer({
          contract,
          amount: 10n,
          to: toAddress,
        });
      }}
      payModal={{
        metadata: {
          name: "Buy me a coffee",
          image: "https://example.com/image.png",
        },
      }}
    />
  • #3822 3848327 Thanks @gregfromstl! - Adds the ability to open OAuth windows as a redirect. This is useful for embedded applications such as telegram web apps.

    Be sure to include your domain in the allowlisted domains for your client ID.

    import { inAppWallet } from "thirdweb/wallets";
    const wallet = inAppWallet({
      auth: {
        mode: "redirect",
      },
    });

Patch Changes

  • #3813 6081ac7 Thanks @kien-ngo! - Expose types: NFTInput and NFTMetadata

  • #3815 87dc9a5 Thanks @MananTank! - Allow clicking on other wallet when a wallet is connected and sign in is required in ConnectEmbed component.

thirdweb@5.39.0

25 Jul 04:59
79e34e1
Compare
Choose a tag to compare

Minor Changes

  • #3785 105e523 Thanks @kien-ngo! - Add ClaimButton for claiming tokens from all thirdweb Drop contracts

    Higher level abstraction to claim tokens from all thirdweb Drop contracts

    import { ClaimButton } from "thirdweb/react";
    import { ethereum } from "thirdweb/chains";
    
    <ClaimButton
      contractAddress="0x..."
      chain={ethereum}
      client={client}
      claimParams={{
        type: "ERC721",
        quantity: 1n,
      }}
    >
      Claim now
    </ClaimButton>;

Patch Changes

thirdweb@5.38.0

22 Jul 22:34
e0e4ce0
Compare
Choose a tag to compare

Minor Changes

  • #3766 9f555ca Thanks @kien-ngo! - Add more chains: Astria EVM Dusknet (912559), Blast Sepolia (168587773), Celo (42220), Cronos (25), Degen (666666666), Fantom Testnet (4002), Fantom (250), Frame Tesnet (68840142), Gnosis Chiado Testnet (10200), Gnosis (100), GodWoken (71402), GodWoken Testnet (71401), Hokum Testnet (20482050), Localhost (1337), Loot chain (5151706), Manta Pacific (169), Manta Pacific Testnet (3441005), Moonbeam (1284), Palm Testnet (11297108099), Palm (11297108109), Polygon zkEvm Testnet (1442), Polygon zkEVM (1101), Rari Testnet (1918988905), Rari chain (1380012617), Scroll Alpha Testnet (534353), Scroll Sepolia Testnet (534353), Scroll (534352), Xai Sepolia (37714555429), Xai Mainnet(660279), zk Candy Sepolia (302)

Patch Changes

thirdweb@5.37.0

20 Jul 01:45
9a29beb
Compare
Choose a tag to compare

Minor Changes

  • #3678 31ee4e5 Thanks @ElasticBottle! - Add discord login as an option of thirdweb in app wallet and ecosystem wallet logins

    import { inAppWallet } from "thirdweb/wallets";
    const wallet = inAppWallet();
    const account = await wallet.connect({
      client,
      chain,
      strategy: "discord",
    });
  • #3716 ec3405b Thanks @gregfromstl! - Adds Discord login to the React Native SDK

Patch Changes