## Problem solved
Short description of the bug fixed or feature added
<!-- start pr-codex -->
---
## PR-Codex overview
This PR improves React Query caching performance by optimizing structural sharing in the `ThirdwebProviderCore`.
### Detailed summary
- Added `structuralSharing` function to optimize caching performance
- Implemented `deepEqual` function for deep comparison
- Updated `ThirdwebProviderCore` to use `structuralSharing` for better caching efficiency
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
## Problem solved
Short description of the bug fixed or feature added
<!-- start pr-codex -->
---
## PR-Codex overview
This PR adds support for fetching social profiles for Farcaster, Lens, and ENS.
### Detailed summary
- Added functions to fetch social profiles for different protocols
- Updated components to use social profile data
- Updated types for social profiles and profiles metadata
> The following files were skipped due to too many changes: `packages/thirdweb/src/react/web/ui/ConnectWallet/Details.tsx`
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
## Problem solved
Short description of the bug fixed or feature added
<!-- start pr-codex -->
---
## PR-Codex overview
This PR updates `getFunctionId` in `function-id.ts` to use `randomBytesHex` instead of `uint8ArrayToHex`.
### Detailed summary
- Replaced `uint8ArrayToHex` with `randomBytesHex` function
- Changed `functionIdCache` from WeakMap to Map
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
## Problem solved
Short description of the bug fixed or feature added
<!-- start pr-codex -->
---
## PR-Codex overview
This PR adds functionality to upload images and animations for lazy minting NFTs in the `LazyMintNftForm` component.
### Detailed summary
- Added `upload` import from `thirdweb/storage`.
- Modified form submission to upload image and animation URLs.
- Updated data handling for image and animation URLs.
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
## Problem solved
Short description of the bug fixed or feature added
<!-- start pr-codex -->
---
## PR-Codex overview
This PR enhances the `useNftDrawerTabs` functionality by allowing updates to metadata in addition to token URI.
### Detailed summary
- Updated condition to include support for updating metadata
- Added option to update metadata in the tabs if supported
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
## Problem solved
Short description of the bug fixed or feature added
<!-- start pr-codex -->
---
## PR-Codex overview
The focus of this PR is to update the description in the Auth page of the `playground-web` app to provide a more detailed explanation of user authentication using wallets.
### Detailed summary
- Updated the description in the Auth page to explain user authentication using wallets
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
## Problem solved
Before:
<img width="747" alt="image" src="https://github.com/user-attachments/assets/ea60b693-70f9-4a20-8d31-246dc428e580">
After:
<img width="746" alt="image" src="https://github.com/user-attachments/assets/58fd622f-0aad-403f-976e-d06ac01ae0e2">
<!-- start pr-codex -->
---
## PR-Codex overview
This PR updates the `formatError` function in `interactive-abi-function.tsx` to handle different error objects more effectively.
### Detailed summary
- Improved error handling in `formatError` function
- Added a check for `error.message` property
- Removed unnecessary type casting for `error` object
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
## Problem solved
Short description of the bug fixed or feature added
<!-- start pr-codex -->
---
## PR-Codex overview
The focus of this PR is to update the logic in `WalletDistributionChartCard.tsx` to correctly handle chart data for different wallet types.
### Detailed summary
- Updated logic to correctly handle chart data for different wallet types
- Adjusted how data is set in `_chartDataMap`
- Refactored the mapping of chart data to include a return statement
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
<!-- start pr-codex -->
## PR-Codex overview
This PR updates the Unity SDK v5 documentation with new features, migration guide, and Ecosystem Wallet details.
### Detailed summary
- Updated Unity SDK v5 documentation with Ecosystem Wallet info
- Migration guide from Unity SDK v4 to v5
- Added Ecosystem Wallet login methods
- Enhanced Ecosystem Wallet details and API usage
- Improved contract interactions and wallet management in Unity SDK v5
> The following files were skipped due to too many changes: `apps/portal/src/app/unity/v5/migration-guide/page.mdx`, `apps/portal/src/app/dotnet/wallets/providers/ecosystem-wallet/page.mdx`
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
## Problem solved
Short description of the bug fixed or feature added
<!-- start pr-codex -->
---
## PR-Codex overview
The focus of this PR is to update the link for the gaming solution page from a specific Unreal Engine quickstart to a more general engine-express page.
### Detailed summary
- Updated the href link for the gaming solution page to a more general engine-express URL.
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
## Problem solved
Short description of the bug fixed or feature added
<!-- start pr-codex -->
---
## PR-Codex overview
This PR improves the handling of local input state in the `AddressInput` component by introducing a new local state variable `_localInput`.
### Detailed summary
- Introduces `_localInput` state variable using `useState`
- Modifies `localInput` assignment logic to consider `_localInput`
- Updates usage of `localInput` in the component to reflect the changes
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
<!-- start pr-codex -->
## PR-Codex overview
This PR enhances analytics data handling in the dashboard:
### Detailed summary
- Added `THIRDWEB_ANALYTICS_API_HOST`
- Modified `createWalletStatsStub` structure
- Updated API handling for analytics data
- Refactored components for improved data display
> The following files were skipped due to too many changes: `apps/dashboard/src/@3rdweb-sdk/react/hooks/useApi.ts`
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
<!-- start pr-codex -->
## PR-Codex overview
This PR adds a new feature to simulate contract transactions before execution, enhancing user experience and safety.
### Detailed summary
- Added `useSimulateTransaction` hook for simulating transactions
- Implemented simulation functionality in `InteractiveAbiFunction`
- Added simulation button and logic for contract functions
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
## Problem solved
Short description of the bug fixed or feature added
<!-- start pr-codex -->
---
## PR-Codex overview
The focus of this PR is to update UI components, add a new import contract modal, and improve the network select dropdown.
### Detailed summary
- Updated table UI styles
- Added `ShowMoreButton` component with `Button` and `ChevronDownIcon`
- Improved `NetworkSelectDropdown` with `Select` components
- Added `ImportModal` with form validation and submission logic
> The following files were skipped due to too many changes: `apps/dashboard/src/components/contract-components/import-contract/modal.tsx`, `apps/dashboard/src/components/contract-components/tables/deployed-contracts.tsx`
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
<!-- start pr-codex -->
## PR-Codex overview
This PR updates the `ethers` package version across multiple packages and introduces new exports in the `ethers5.ts` and `ethers6.ts` files.
### Detailed summary
- Updated `ethers` package version to `"5.7.2"`
- Added new exports in `ethers5.ts` and `ethers6.ts`
- Modified imports in `provider-setup.tsx` to use updated exports
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
## Problem solved
Short description of the bug fixed or feature added
<!-- start pr-codex -->
---
## PR-Codex overview
The focus of this PR is to update the import of `ModularExt` from "thirdweb/extensions/modular" to "thirdweb/modules".
### Detailed summary
- Updated import of `ModularExt` from "thirdweb/extensions/modular" to "thirdweb/modules"
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
## Problem solved
Short description of the bug fixed or feature added
<!-- start pr-codex -->
---
## PR-Codex overview
This PR introduces changes related to adding a `shadowColor` prop, refactoring table components, and updating button stories.
### Detailed summary
- Added `shadowColor` prop to components
- Refactored table components with `TableContainer`
- Updated button stories import path
> The following files were skipped due to too many changes: `apps/dashboard/src/@/components/ui/table.stories.tsx`, `apps/dashboard/src/@/components/ui/table.tsx`, `apps/dashboard/src/components/shared/TWTable.tsx`, `apps/dashboard/src/app/(dashboard)/dashboard/connect/ecosystem/[slug]/(active)/components/server/partners-table.tsx`, `apps/dashboard/src/components/contract-components/tables/deployed-contracts.tsx`
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
## Problem solved
Short description of the bug fixed or feature added
<!-- start pr-codex -->
---
## PR-Codex overview
This PR removes a redirect logic for the "/login" path and updates path splitting logic in `middleware.ts`.
### Detailed summary
- Removed redirect logic for "/login" path
- Updated path splitting logic in `middleware.ts`
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
## Problem solved
Let's say I need a list of owned tokenids for rendering a list of <NFT.Media />. Using getOwnedNFTs is a waste of requests, so I split the code from the current getOwnedNFTs to make a new function
<!-- start pr-codex -->
---
## PR-Codex overview
This PR adds a new function `getOwnedTokenIds` to retrieve ERC1155 tokenIds and their balances for a wallet address, along with related tests.
### Detailed summary
- Added `getOwnedTokenIds` function to retrieve ERC1155 tokenIds and balances
- Updated `getOwnedNFTs` to use `getOwnedTokenIds`
- Added tests for `getOwnedTokenIds`
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
2024-09-05 09:58:46 +00:00
Jonas DanielsGitHubgithub-actions[bot] <github-actions[bot]@users.noreply.github.com>
address: https://app.graphite.dev/github/pr/thirdweb-dev/js/4413/Update-Refactor-NFT-reveal-functionality-and-batch-lazy-minting#comment-PRRC_kwDOH5MG4s5oAmQb
<!-- start pr-codex -->
---
## PR-Codex overview
The focus of this PR is to refactor the `isAccountDeployed` function by replacing the `getBytecode` call with `isContractDeployed` for improved readability and efficiency.
### Detailed summary
- Replaced `getBytecode` call with `isContractDeployed` for checking contract deployment status
- Updated function return logic for clarity and simplicity
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
<!-- start pr-codex -->
## PR-Codex overview
The focus of this PR is to introduce the `ModularExt` extension and refactor the `detectedModularExtension` logic in the `useContractRouteConfig` hook.
### Detailed summary
- Added `ModularExt` import
- Refactored `detectedModularExtension` logic to `isModularCore`
- Updated `isEnabled` logic for 'Modules' section to use `isModularCore`
- Removed unnecessary code related to `detectedModularExtension`
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
<!-- start pr-codex -->
## PR-Codex overview
This PR removes the usage of `useRouter` from `contract-table` component and updates the onClick behavior to always open links in a new tab.
### Detailed summary
- Removed `useRouter` import
- Updated onClick behavior to open links in a new tab
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
<!-- start pr-codex -->
## PR-Codex overview
The focus of this PR is to add support for additional ERC721 metadata and claim conditions, optimize contract checklist components, and improve feature detection.
### Detailed summary
- Added support for `isSharedMetadataSupported` and `getClaimConditions` in ERC721.
- Optimized contract checklist component for ERC721, ERC1155, and ERC20 contracts.
- Improved feature detection for lazy minting, claim conditions, and account factory creation.
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
<!-- start pr-codex -->
## PR-Codex overview
This PR adds support for checking if specific ERC721 and ERC1155 methods are supported by contracts. It also updates function exports and improves code consistency.
### Detailed summary
- Added functions to check method support for ERC721 and ERC1155 contracts
- Updated function exports for minting, updating metadata, and token URI
- Improved code consistency and clarity in various files
> The following files were skipped due to too many changes: `packages/thirdweb/src/extensions/erc721/read/getNFTs.ts`, `packages/thirdweb/src/extensions/erc1155/write/mintAdditionalSupplyTo.ts`, `apps/dashboard/src/contract-ui/tabs/claim-conditions/page.tsx`, `packages/thirdweb/src/exports/extensions/erc721.ts`, `apps/dashboard/src/contract-ui/tabs/claim-conditions/components/claim-conditions.tsx`, `apps/dashboard/src/contract-ui/tabs/nfts/components/table.tsx`, `packages/thirdweb/src/extensions/erc1155/drops/write/updateMetadata.ts`, `packages/thirdweb/src/extensions/erc721/drops/write/updateMetadata.ts`, `apps/dashboard/src/contract-ui/hooks/useRouteConfig.tsx`, `apps/dashboard/src/core-ui/nft-drawer/useNftDrawerTabs.tsx`, `apps/dashboard/src/contract-ui/tabs/nfts/page.tsx`
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
<!-- start pr-codex -->
## PR-Codex overview
This PR enhances ERC1155 Drop ClaimCondition functionality.
### Detailed summary
- Added `isGetActiveClaimConditionSupported` function
- Updated `getActiveClaimCondition` and `claimTo` methods
- Added `isClaimToSupported` function
- Updated `lazyMint` method and added `isLazyMintSupported` function
> The following files were skipped due to too many changes: `packages/thirdweb/src/extensions/erc1155/drops/write/setClaimConditions.ts`, `packages/thirdweb/src/extensions/erc20/drops/write/setClaimConditions.ts`, `packages/thirdweb/src/extensions/erc20/drops/write/claimTo.ts`, `packages/thirdweb/src/extensions/erc1155/drops/read/getClaimConditions.ts`, `packages/thirdweb/src/extensions/erc1155/drops/write/resetClaimEligibility.ts`, `packages/thirdweb/src/extensions/erc1155/__generated__/IDrop1155/read/claimCondition.ts`, `packages/thirdweb/src/extensions/erc1155/drop1155.test.ts`
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
<!-- start pr-codex -->
## PR-Codex overview
This PR removes unusable single-phase claim condition extensions for ERC20, ERC721, and ERC1155 tokens.
### Detailed summary
- Removed unused single-phase claim condition extensions for ERC20, ERC721, and ERC1155 tokens
- Updated export functions for ERC20, ERC721, and ERC1155 tokens
- Refactored `getActiveClaimCondition` functions for ERC1155 and ERC721 tokens to handle unknown phase types
> The following files were skipped due to too many changes: `packages/thirdweb/src/extensions/erc20/drops/read/getActiveClaimCondition.ts`
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
## Problem solved
Short description of the bug fixed or feature added
<!-- start pr-codex -->
---
## PR-Codex overview
This PR enhances UI components in various dashboard sections:
- Updates alert styles
- Refactors account factories display
- Improves contract cells rendering
- Adds tab navigation to Smart Wallets
### Detailed summary
- Updated alert styles with new variants
- Refactored account factory display with skeleton loading
- Improved rendering of contract cells with skeleton loading and links
- Added tab navigation to Smart Wallets section
> The following files were skipped due to too many changes: `apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/account-abstraction/AAFooterSection.tsx`, `apps/dashboard/src/pages/dashboard/connect/account-abstraction.tsx`
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
<!-- start pr-codex -->
## PR-Codex overview
The focus of this PR is to enhance the ERC20 Drop ClaimCondition feature by adding metadata support and improving claim condition retrieval.
### Detailed summary
- Added `metadata` field to `setClaimConditions` function in ERC20 Drop
- Updated function selectors and inputs in ERC20 Drop
- Renamed `ById` to `MultiById` for clarity
- Improved claim condition retrieval logic
- Added support for `resetClaimEligibility` in ERC20 Drop
- Updated exports and imports for clarity
> The following files were skipped due to too many changes: `packages/thirdweb/src/extensions/erc20/drops/read/getClaimConditions.ts`, `packages/thirdweb/src/extensions/erc20/drop20.test.ts`
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
<img width="1164" alt="image" src="https://github.com/user-attachments/assets/3a144686-c965-466f-90d3-b95eb1b05e45">
<!-- start pr-codex -->
---
## PR-Codex overview
The focus of this PR is to add a CSS class to limit the height and enable horizontal overflow in the `DialogContent` component of the Create Ticket form.
### Detailed summary
- Added `className="max-h-full overflow-x-auto"` to the `DialogContent` component in `create-ticket.client.tsx`.
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
## Problem solved
keccak256("matic.network.proxy.implementation") - used in polygon USDT proxy: https://polygonscan.com/address/0xc2132d05d31c914a87c6611c10748aeb04b58e8f#code
<!-- start pr-codex -->
---
## PR-Codex overview
This PR focuses on enhancing the Matic (Polygon) proxy contract implementation resolution in the codebase.
### Detailed summary
- Added resolution for Matic proxy contract implementation slot
- Updated test cases for Matic proxy contract implementation
- Added support for Polygon chain in test setup
- Defined Polygon chain constants and RPC URLs
- Updated Ethereum and Polygon chain definitions
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
<!-- start pr-codex -->
## PR-Codex overview
This PR enhances ERC721 Drop ClaimCondition functionality by adding new methods and improving existing ones.
### Detailed summary
- Added `claimCondition` method to `IDrop.json`
- Updated `getClaimParams` in `get-claim-params.ts` to use `ZERO_ADDRESS`
- Added `isClaimToSupported` and `isLazyMintSupported` functions
- Updated `lazyMint` and `claimTo` functions
- Added support check functions for various methods
> The following files were skipped due to too many changes: `packages/thirdweb/src/extensions/erc721/__generated__/IDrop/read/claimCondition.ts`, `packages/thirdweb/src/extensions/erc721/drops/read/getActiveClaimCondition.ts`, `packages/thirdweb/src/extensions/erc721/drops/read/getClaimConditions.ts`, `packages/thirdweb/src/extensions/erc721/drop721.test.ts`
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
2024-09-04 23:19:30 +00:00
Jonas DanielsGitHubgithub-actions[bot] <github-actions[bot]@users.noreply.github.com>
## Problem solved
Short description of the bug fixed or feature added
<!-- start pr-codex -->
---
## PR-Codex overview
This PR enhances the `ConnectButton` component by adding props to hide "Send", "Receive", and "Buy" buttons in the details modal.
### Detailed summary
- Added props to hide "Send", "Receive", and "Buy" buttons in the `ConnectButton` component details modal
- Updated `ConnectButtonProps` with new boolean props for hiding buttons
- Modified `Details.tsx` to conditionally display buttons based on the new props
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
## Problem solved
Short description of the bug fixed or feature added
<!-- start pr-codex -->
---
## PR-Codex overview
This PR focuses on fixing the Swap Fees layout in the fees drawer in the pay UI.
### Detailed summary
- Updated `SwapFees` component layout in `Fees.tsx` to align items to the left
- Removed `align` prop from `SwapFees` component in `BuyScreen.tsx`
- Created `SwapFeesRightAligned` component for right-aligned fees display in `ConfirmationScreen.tsx`
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
## Problem solved
Short description of the bug fixed or feature added
<!-- start pr-codex -->
---
## PR-Codex overview
This PR focuses on updating the analytics feature for team projects.
### Detailed summary
- Updated links and routes related to analytics feature
- Renamed functions for clarity
- Refactored components for analytics visualization
- Added new UI components for analytics dashboard
> The following files were skipped due to too many changes: `apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/analytics/_components/ConnectSDKCard.tsx`, `apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/analytics/ConnectAnalyticsDashboard.tsx`, `apps/dashboard/src/pages/dashboard/connect/analytics.tsx`
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->