Skip to content

Releases: thirdweb-dev/js

[email protected]

21 Sep 02:32
ca23a95
Compare
Choose a tag to compare

Patch Changes

[email protected]

20 Sep 22:17
07d191b
Compare
Choose a tag to compare

Minor Changes

  • #4692 0a7448c Thanks @gregfromstl! - Login to an in-app wallet with your Coinbase account

    import { inAppWallet } from "thirdweb/react";
    
    const wallet = inAppWallet();
    
    const account = await wallet.connect({
      strategy: "coinbase",
      chain: mainnet,
      client: thirdwebClient,
    });

Patch Changes

[email protected]

19 Sep 10:13
7ff46a5
Compare
Choose a tag to compare

Patch Changes

[email protected]

19 Sep 04:43
51510a1
Compare
Choose a tag to compare

Patch Changes

[email protected]

18 Sep 23:06
b76d298
Compare
Choose a tag to compare

Patch Changes

  • #4665 6ce7c83 Thanks @joaquim-verges! - Update @mobile-wallet-protocol/client to 0.0.3

  • #4659 406de39 Thanks @jnsdls! - - Allow using valid JWTs for authorization

    • update dependencies
    • simplify updateMetadata extension params for ERC721 and ERC1155

@thirdweb-dev/[email protected]

18 Sep 23:06
b76d298
Compare
Choose a tag to compare

Patch Changes

[email protected]

17 Sep 03:26
7b0040b
Compare
Choose a tag to compare

Minor Changes

  • #4607 7b94bf5 Thanks @joaquim-verges! - Expose checkModulesCompatibility function

  • #4601 a4a4136 Thanks @joaquim-verges! - useAdminWallet() Hook + automatically auth when using inapp + smart accounts

    Add useAdminWallet() hook to get the admin wallet for a smart wallet

    const activeWallet = useActiveWallet(); // smart wallet
    const adminWallet = useAdminWallet(); // the personal wallet that controls the smart wallet

    Automatically auth when using inapp + smart accounts

    When using auth with an inapp + smart wallet, ConnectButton and ConnectEmebed will automatically auth without having to click sign in.

  • #4604 3009a0f Thanks @joaquim-verges! - Expose publishContract extension

Patch Changes

@thirdweb-dev/[email protected]

17 Sep 03:26
7b0040b
Compare
Choose a tag to compare

Patch Changes

[email protected]

13 Sep 19:15
d115307
Compare
Choose a tag to compare

Minor Changes

  • #4571 5058fdb Thanks @gregfromstl! - Adds X authentication

  • #4565 c0778cb Thanks @gregfromstl! - Adds parseAvatarRecord and parseNftUri utilities

    import { parseAvatarRecord } from "thirdweb/extensions/ens";
    import { parseNftUri } from "thirdweb/extensions/common";
    
    const avatarUrl = await parseAvatarRecord({
      client,
      uri: "...",
    });
    
    const nftUri = await parseNftUri({
      client,
      uri: "...",
    });

Patch Changes

  • #4582 5d3b395 Thanks @gregfromstl! - Adds the ability to hide certain wallets in the wallet switcher

    <ConnectButton
      client={client}
      detailsModal={{
        // We hide the in-app wallet so they can't switch to it
        hiddenWallets: ["inApp"],
      }}
      accountAbstraction={{
        chain: baseSepolia,
        sponsorGas: true,
      }}
    />
  • #4546 3901805 Thanks @edwardysun! - Add preferredProvider to buyWithFiat

[email protected]

12 Sep 18:23
22e066c
Compare
Choose a tag to compare

Minor Changes

  • #4527 b76a82c Thanks @joaquim-verges! - Update React Native dependencies and add support for React Native 0.75

  • #4499 fe1ff63 Thanks @joaquim-verges! - Breaking Change in deployPublishedContract

    Contract constructor/ initializer params are now passed as a single object instead of an array. The object should have the same shape as the params defined in the contract's ABI.

    Example of old way (using constructorParams or initializeParams):

    const address = await deployPublishedContract({
      account,
      chain,
      client,
      contractId: "Airdrop",
      contractParams: [TEST_ACCOUNT_A.address, ""],
    });

    New way (using contractParams):

    const address = await deployPublishedContract({
      account,
      chain,
      client,
      contractId: "Airdrop",
      contractParams: {
        defaultAdmin: TEST_ACCOUNT_A.address,
        contractURI: "",
      },
    });
  • #4528 c96e2d9 Thanks @joaquim-verges! - Handle salt parameter for deterministic deploys of published contracts

    You can now pass a salt parameter to the deployPublishedContract function to deploy a contract deterministically.

    const address = await deployPublishedContract({
      client,
      chain,
      account,
      contractId: "Airdrop",
      contractParams: {
        defaultAdmin: "0x...",
        contractURI: "ipfs://...",
      },
      salt: "test", // <--- deterministic deploy
    });

    This also works for unpublished contracts, via the deployContract function.

    const address = await deployContract({
      client,
      chain,
      account,
      bytecode: "0x...",
      abi: contractAbi,
      constructorParams: {
        param1: "value1",
        param2: 123,
      },
      salt: "test", // <--- deterministic deploy
    });
  • #4541 0596fa2 Thanks @gregfromstl! - Adds getUsers function to query users on the server

    import { getUser } from "thirdweb/wallets";
    
    const user = await getUser({
      client,
      walletAddress: "0x123...",
    });

Patch Changes