582 Commits
Author SHA1 Message Date
MananTank 6fd8245e0a Update tables and related UI updates (#4423)
## 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 -->
2024-09-05 17:09:12 +00:00
MananTank dc3849334d Fix user stuck in logged out state in dashboard (#4421)
## 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 -->
2024-09-05 15:26:16 +00:00
jnsdls 5275fd7c9a [Update] Add ModularExt support and refactor modules detection (#4417)
<!-- 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 -->
2024-09-05 08:44:20 +00:00
jnsdls 3c50597d29 [Update] Open contract links in new tab instead of router navigation (#4415)
<!-- 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 -->
2024-09-05 08:44:20 +00:00
Jonas DanielsandGitHub 297876cdf3 [Update] Refactor NFT page UI and simplify rendering conditions (#4414) 2024-09-05 01:41:26 -07:00
Jonas DanielsandGitHub 60c092f87b [Update] Refactor NFT reveal functionality and batch lazy minting (#4413) 2024-09-05 01:33:31 -07:00
jnsdls 4ad441e2f7 [Update] Refactor ContractChecklist and add feature detection (#4400)
<!-- 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 -->
2024-09-05 06:43:55 +00:00
jnsdls 0f8679a3c1 nft extension detection v5 (#4399)
<!-- 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 -->
2024-09-05 06:43:54 +00:00
MananTank 1574509319 Migrate Account Abstraction Factories page to tailwind/shadcn (#4389)
## 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 -->
2024-09-05 05:25:14 +00:00
ianandGitHub e92cae2549 Ian/pay updates (#4371) 2024-09-05 14:56:27 +12:00
kien-ngo 6d75abf196 [Dashboard] Make long support form scrollable (#4398)
<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 -->
2024-09-05 01:57:36 +00:00
MananTank d8f55efc97 Add Connect analytics page in Teams layout (#4384)
## 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 -->
2024-09-04 19:52:29 +00:00
MananTank d254505436 Add Pay page in teams layout (#4387)
## Problem solved

Short description of the bug fixed or feature added

<!-- start pr-codex -->

---

## PR-Codex overview
The focus of this PR is to enhance the `PayConfig` component and update related components to use `clientId` instead of `apiKey.key`.

### Detailed summary
- Updated `PayConfig` to use `clientId` instead of `apiKey.key`
- Updated `PayAnalytics` to accept `clientId` instead of `apiKey`
- Updated `WebhooksPage` to use `clientId` instead of `apiKey.key`

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-09-04 16:46:36 +00:00
jnsdls b663959917 [Update] Refactor claim conditions detection and NFT page handling (#4379)
<!-- start pr-codex -->

## PR-Codex overview
The focus of this PR is to update the NFT overview page to include an `isErc721` flag and adjust features detection in NFT drawer tabs.

### Detailed summary
- Added `isErc721` flag to NFT overview page props
- Adjusted features detection in NFT drawer tabs for ERC20
- Refactored feature detection in contract route configuration

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-09-04 16:39:06 +00:00
jnsdls ad61b64b4b [Update] Refactor ERC4337 extension detection and UI (#4378)
### TL;DR

Enhanced ERC4337 support with new functions and improved contract detection.

### What changed?

- Added new ERC4337 extension functions for account management and permissions.
- Implemented support checks for various ERC4337 functions.
- Updated contract UI hooks to use new detection methods for ERC4337 features.
- Removed redundant code and simplified contract UI components.
- Improved type safety and consistency across ERC4337-related functions.

### How to test?

1. Test the new ERC4337 functions in a development environment.
2. Verify that the contract UI correctly detects and displays ERC4337 features.
3. Check that account management, permissions, and factory functionalities work as expected.
4. Ensure that the support checks for ERC4337 functions return correct results.

### Why make this change?

This change improves the detection and support for ERC4337 smart contract accounts. It enhances the developer experience by providing more granular control over account features and permissions. The updates also streamline the codebase, making it easier to maintain and extend ERC4337 functionality in the future.

---

<!-- start pr-codex -->

---

## PR-Codex overview
This PR updates account permissions and extensions in the dashboard.

### Detailed summary
- Updated imports and components in `AccountPermissionsPage`, `AccountsPage`, and `AccountPage`.
- Added support for `isAddAdminSupported`, `isAddSessionKeySupported`, `isRemoveSessionKeySupported` functions in ERC4337 extensions.
- Added support for `isGetAllActiveSignersSupported`, `isGetAllAdminsSupported`, `isGetAllSignersSupported`, `isIsActiveSignerSupported` functions in account permissions.

> The following files were skipped due to too many changes: `packages/thirdweb/src/exports/extensions/erc4337.ts`, `apps/dashboard/src/contract-ui/hooks/useRouteConfig.tsx`

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-09-04 16:39:04 +00:00
Kien NgoandGitHub 57fb7fc6fb [Dashboard] Fix CodeSnippet page (#4386) 2024-09-04 08:37:00 -07:00
MananTank 70f051d770 Docs: Fix table cell size on firefox (#4381)
Fixes - https://linear.app/thirdweb/issue/CNCT-1751/fix-portal-table-cell-widths-on-firefox
2024-09-04 14:38:37 +00:00
jnsdls 4ad5f7fd50 [Update] Refactor NFT drawer tabs and contract interactions (#4377)
### TL;DR

Refactored NFT-related components and hooks to improve code organization and reduce redundancy.

### What changed?

- Consolidated imports from `thirdweb/extensions` modules
- Removed redundant contract creation and feature detection logic
- Updated component props to directly pass `ThirdwebContract` instead of separate address and chain ID
- Simplified conditional rendering based on contract type (ERC721 vs ERC1155)
- Moved some feature detection logic to parent components
- Updated `useNFTDrawerTabs` hook to use new contract prop structure

### How to test?

1. Navigate to the NFT management pages in the dashboard
2. Verify that all NFT-related functionality (minting, burning, transferring, etc.) works as expected for both ERC721 and ERC1155 tokens
3. Check that the NFT drawer displays the correct tabs and options based on the contract type and user permissions
4. Ensure that claim conditions and multi-phase claim conditions are correctly detected and displayed

### Why make this change?

This refactoring improves code maintainability and reduces duplication. By centralizing contract-related logic and simplifying component interfaces, it becomes easier to manage and extend NFT functionality across the dashboard. The changes also prepare the codebase for potential future enhancements and make it more consistent with other parts of the application.

---

<!-- start pr-codex -->

---

## PR-Codex overview
This PR introduces support for multi-phase claims in ERC20, ERC721, and ERC1155 contracts across various components.

### Detailed summary
- Added `isMultiPhase` boolean to support multi-phase claims in ERC20, ERC721, and ERC1155 contracts.
- Updated components to handle `isMultiPhase` property efficiently.
- Refactored code to remove unnecessary functions and imports.

> The following files were skipped due to too many changes: `apps/dashboard/src/contract-ui/tabs/nfts/components/airdrop-tab.tsx`, `apps/dashboard/src/core-ui/nft-drawer/useNftDrawerTabs.tsx`, `apps/dashboard/src/contract-ui/hooks/useRouteConfig.tsx`

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-09-04 06:56:23 +00:00
jnsdls e9cd4c25f1 [Update] Refactor contract route config and permissions detection (#4376)
### TL;DR

Refactored contract UI routing and improved permissions detection.

### What changed?

- Removed `contractAddress` parameter from `useContractRouteConfig` function
- Implemented new logic for detecting permissions and enumerable permissions
- Simplified component rendering by removing unnecessary conditional checks
- Updated `ContractOverviewPage` to use the new permissions detection
- Refactored route configurations to use the contract prop directly
- Adjusted the `Inner` component to reflect these changes

### How to test?

1. Navigate to various contract pages and ensure all tabs and components load correctly
2. Test contracts with different permission configurations to verify accurate detection
3. Check that the overview page displays the correct permissions information
4. Verify that all contract-related components render without errors

### Why make this change?

This refactoring improves code efficiency and readability while enhancing the accuracy of permissions detection. By simplifying the routing logic and removing redundant checks, we've made the codebase more maintainable and reduced the potential for errors. The new permissions detection method provides a more reliable way to determine contract capabilities, ensuring that users see accurate information about contract features and permissions.

---

<!-- start pr-codex -->

---

## PR-Codex overview
The focus of this PR is to refactor and optimize the contract route configuration logic.

### Detailed summary
- Refactored `useContractRouteConfig` to simplify and optimize contract route configurations
- Removed unnecessary dependencies and streamlined the logic for permissions detection
- Updated usage of contract address to use `props.contract.address` consistently throughout
- Improved code readability and maintainability in the contract UI components

> The following files were skipped due to too many changes: `apps/dashboard/src/contract-ui/hooks/useRouteConfig.tsx`

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-09-04 06:56:19 +00:00
Joe-ThirdwebandGitHub ccaaef481c Updating Soneium Chainlist Page (#4373) 2024-09-03 23:54:32 -07:00
jnsdls 787ed1531f [Update] Refactor useWalletNFTs hook and NFT handling (#4374)
### TL;DR

Refactored wallet NFT handling and improved font loading across the dashboard.

### What changed?

- Updated `useWalletNFTs` hook to accept `chainId` as a parameter
- Modified `NftsOwned` component to use contract chain ID
- Refactored font loading in `layout.tsx` and `MiniPlayground.tsx`
- Updated NFT data structures to use `id` instead of `tokenId`
- Adjusted NFT card rendering to include chain ID and contract address
- Modified Alchemy, Moralis, and SimpleHash NFT transformations

### How to test?

1. Test the wallet NFT fetching functionality with different chain IDs
2. Verify that NFT cards display correctly in the dashboard
3. Check font loading performance in various components
4. Ensure that NFT details are correctly displayed in listings and overview pages

### Why make this change?

This change improves the consistency of NFT handling across the dashboard, enhances font loading performance, and provides better support for multi-chain NFT display. It also aligns the NFT data structure with the latest ThirdWeb SDK conventions, using `id` instead of `tokenId`.

---
2024-09-04 05:37:38 +00:00
jnsdls 0246529e61 [Update] Migrate contract analytics to v5 (#4366)
<!-- start pr-codex -->

## PR-Codex overview
This PR focuses on updating imports and types related to ABI parameters in the codebase.

### Detailed summary
- Updated imports from `"@thirdweb-dev/sdk"` to `"abitype"`
- Changed types to use `AbiParameter` instead of previous types like `Abi`, `AbiFunction`, `AbiEvent`
- Fixed type errors and updated type annotations throughout the codebase

> The following files were skipped due to too many changes: `apps/dashboard/src/components/contract-functions/interactive-abi-function.tsx`, `apps/dashboard/src/contract-ui/tabs/overview/components/NFTDetails.tsx`, `packages/thirdweb/src/extensions/thirdweb/read/contractType.ts`, `apps/dashboard/src/contract-ui/tabs/code/components/code-overview.tsx`, `apps/dashboard/src/components/contract-components/contract-deploy-form/custom-contract.tsx`, `apps/dashboard/src/components/contract-components/contract-publish-form/index.tsx`, `apps/dashboard/src/contract-ui/tabs/analytics/page.tsx`, `apps/dashboard/src/contract-ui/tabs/overview/page.tsx`, `apps/dashboard/src/components/contract-components/hooks.ts`, `apps/dashboard/src/components/contract-functions/contract-function.tsx`, `apps/dashboard/src/contract-ui/hooks/useRouteConfig.tsx`

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-09-04 01:54:02 +00:00
MananTank 961445f9d6 Update Connect Analytics charts (#4372)
## Problem solved

Short description of the bug fixed or feature added

<!-- start pr-codex -->

---

## PR-Codex overview
This PR focuses on restructuring chart components and adding storybook stories for analytics dashboard components.

### Detailed summary
- Deleted `DocsButton.tsx` and `useApi.ts`
- Updated global CSS variables for charts
- Modified chart component styles and colors
- Refactored story utility functions
- Added new chart components and stories
- Implemented skeleton and loading states for charts

> The following files were skipped due to too many changes: `apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/analytics/ConnectAnalyticsDashboard.tsx`, `apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/analytics/_components/DailyConnectionsChartCard.tsx`, `apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/analytics/_components/WalletDistributionChartCard.tsx`, `apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/analytics/_components/WalletConnectorsChartCard.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 -->
2024-09-04 00:14:14 +00:00
MananTank b6aae7f29f dashboard storybook improvements (#4369)
## Problem solved

Short description of the bug fixed or feature added

<!-- start pr-codex -->

---

## PR-Codex overview
This PR adds mobile viewport options to Storybook stories and updates UI components for mobile viewports.

### Detailed summary
- Added mobile viewport options to Storybook stories
- Updated UI components for mobile viewports in various settings pages and embedded wallets
- Adjusted button sizes and styles for different viewport sizes

> The following files were skipped due to too many changes: `pnpm-lock.yaml`, `apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/general/Sidebar.stories.tsx`

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-09-03 15:27:39 +00:00
Prithvish BaidyaandGitHub ec4d635e1b refactor: Fix address slicing in CopyAddressButton component (#4370) 2024-09-03 08:26:53 -07:00
Jonas DanielsandGitHub ab15e9cf1f [Update] Refine marketplace v3 detection logic (#4367) 2024-09-03 01:11:59 -07:00
jnsdls 4a3a007c2c [Add] Embed tab for marketplace and token contracts (#4364) 2024-09-03 01:55:23 +00:00
gregfromstl c54822f80c [Dashboard] Fix: Only show sponsorship banner on AA page when on eligible chain (#4362)
<!-- start pr-codex -->

## PR-Codex overview
The focus of this PR is to implement a feature that automatically applies gas credits for specific blockchain chains in the application.

### Detailed summary
- Added `chain` state using `useActiveWalletChain` hook
- Implemented logic to check if the current chain is in a predefined list
- Updated UI to display information based on the chain eligibility

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-09-03 00:40:23 +00:00
MananTank d8c88ef720 Add In-app wallet page on Teams layout (#4361)
## Problem solved

Short description of the bug fixed or feature added

<!-- start pr-codex -->

---

## PR-Codex overview
The focus of this PR is to enhance the in-app wallet functionality by updating configurations and adding analytics components.

### Detailed summary
- Updated `Configure` component props for better data handling
- Added `AnalyticsCallout` component for analytics tracking
- Improved UI with new components like `InAppWaletFooterSection`

> The following files were skipped due to too many changes: `apps/dashboard/src/app/team/[team_slug]/[project_slug]/connect/in-app-wallets/_components/footer.tsx`, `apps/dashboard/src/pages/dashboard/connect/in-app-wallets.tsx`

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-09-03 00:27:56 +00:00
MananTank 3a55a7eabc Fix TWTable whitespace wrapping (#4359)
## Problem solved

Short description of the bug fixed or feature added

<!-- start pr-codex -->

---

## PR-Codex overview
This PR adds the `whitespace-nowrap` class to the `ScrollShadow` component in `TWTable.tsx` for better text wrapping control.

### Detailed summary
- Added `whitespace-nowrap` class to `ScrollShadow` component in `TWTable.tsx`

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-09-02 23:07:19 +00:00
MananTank 0aa72e3a93 Migrate In-app wallet settings page to shadcn/tailwind (#4360)
## Problem solved

Short description of the bug fixed or feature added

<!-- start pr-codex -->

---

## PR-Codex overview
This PR updates global CSS variables, adds a new API key field, and refactors components for In-App Wallet settings.

### Detailed summary
- Updated global CSS variables for input and ring styles
- Added `redirectUrls` field to `UpdateKeyInput` interface
- Added `InAppWalletSettingsUI` storybook component
- Refactored `Configure` and `index` components for In-App Wallet settings

> The following files were skipped due to too many changes: `apps/dashboard/src/components/embedded-wallets/Configure/index.tsx`

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-09-02 22:54:49 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
1246486102 chore(deps-dev): bump checkly from 4.7.0 to 4.8.1 (#4358)
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-02 15:22:59 -07:00
MananTank 3a868e2778 Add theme switcher in dashboard storybook preview (#4354)
## Problem solved

Short description of the bug fixed or feature added

<!-- start pr-codex -->

---

## PR-Codex overview
This PR updates Storybook stories by removing theme props and related functions, simplifying the code structure.

### Detailed summary
- Removed `useSetStoryTheme` function and theme props from Storybook stories
- Updated components to remove theme-related logic and props
- Simplified the structure of Storybook stories for easier maintenance

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-09-02 19:02:57 +00:00
jnsdls 470f4db74e v5 extension detection (dashboard) (#4303)
<!-- start pr-codex -->

## PR-Codex overview
The focus of this PR is to introduce a new library `@shazow/whatsabi` and update contract UI components and ERC20 checks.

### Detailed summary
- Added `@shazow/whatsabi` library
- Updated contract UI components
- Enhanced ERC20 token checks
- Improved settings page structure

> The following files were skipped due to too many changes: `pnpm-lock.yaml`, `apps/dashboard/src/contract-ui/hooks/useRouteConfig.tsx`

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-09-02 18:02:12 +00:00
gregfromstl 21c2b04ef2 [Dashboard] Feature: Remove analytics gating and update empty state (#4329)
## Problem solved

Short description of the bug fixed or feature added

![Screenshot 2024-09-01 at 12.36.10 PM.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/G5kV6fAq4H1wu10SVop6/0f419079-18df-423a-934b-f594f52dd126.png)

<!-- start pr-codex -->

---

## PR-Codex overview
This PR updates redirects and UI components related to the `/dashboard/connect` page. It changes the destination of a redirect, updates layout and links for "Connect" page items, and adds new icons for Unity, TypeScript, .NET, Unreal, and React.

### Detailed summary
- Updated redirect destination from `/dashboard/connect/in-app-wallets` to `/dashboard/connect/analytics`
- Modified layout and links for "Connect" page items
- Added new UI components for DocsButton, UnityIcon, TypeScriptIcon, .NETIcon, UnrealIcon, and ReactIcon

> The following files were skipped due to too many changes: `apps/dashboard/src/components/icons/ReactIcon.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 -->
2024-09-02 17:35:54 +00:00
Joe-ThirdwebandGitHub 0e7ff0acbc Adding custom chains on chainlist. (#4350) 2024-09-02 10:32:05 -07:00
MananTank 0476f81e4c Migrate GatedSwitch to tailwind + Refactor (#4353)
## Problem solved

Short description of the bug fixed or feature added

<!-- start pr-codex -->

---

## PR-Codex overview
This PR updates components with a new `upgradeRequired` prop and adds a `Spinner` component for loading states.

### Detailed summary
- Added `upgradeRequired` prop to `GatedSwitch` component
- Updated `Spinner` component usage in multiple files
- Added `Spinner` component for loading states in `SponsorshipPolicies` and `Configure` components

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-09-02 15:56:03 +00:00
MananTank fa7281d4b7 Migrate In-app wallet users page to shadcn/tailwind (#4348)
## Problem solved

Short description of the bug fixed or feature added

<!-- start pr-codex -->

---

## PR-Codex overview
The focus of this PR is to refactor and optimize components in the dashboard app.

### Detailed summary
- Updated rendering of supported platforms in `ConnectLanding`
- Refactored `SupportedPlatformLink` component
- Improved UI and functionality in `Analytics` and `UsageCard`
- Enhanced user experience in `index.tsx` for embedded wallets

> The following files were skipped due to too many changes: `apps/dashboard/src/components/embedded-wallets/Users/index.tsx`, `apps/dashboard/src/pages/dashboard/connect/in-app-wallets.tsx`

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-09-02 11:34:21 +00:00
MananTank d9177eb724 Migrate TWTable to shadcn/tailwind (#4347)
## Problem solved

Short description of the bug fixed or feature added

<!-- start pr-codex -->

---

## PR-Codex overview
This PR adds a `Separator` component, updates table styling, and refactors components in `TWTable.tsx`.

### Detailed summary
- Added `Separator` component
- Updated table styling with new classes
- Refactored `Th`, `Tr`, and `Td` components
- Removed unused imports and components

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-09-02 11:34:19 +00:00
MananTank 18678d45e7 Team Settings page UI (#4304)
## Problem solved

Short description of the bug fixed or feature added

<!-- start pr-codex -->

---

## PR-Codex overview
This PR focuses on improving UI components and updating team-related functionalities in the dashboard. Changes include UI refinements, new components, and team-related API updates.

### Detailed summary
- Updated UI components like buttons and icons for better styling
- Added new components like `RoleSelector` and `DangerSettingCard`
- Updated team-related API with additional fields for `Team`
- Improved UI consistency and user experience in the dashboard

> The following files were skipped due to too many changes: `apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/general/DangerSettingCard.tsx`, `apps/dashboard/src/stories/Button.stories.tsx`, `apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/_components/sidebar/TeamSettingsSidebar.tsx`, `apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/_components/sidebar/TeamsMobileNav.tsx`, `apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/general/DangerSettingCard.stories.tsx`, `apps/dashboard/src/app/components/Header/TeamHeader/TeamHeaderUI.tsx`, `apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/general/SettingsCard.tsx`, `apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/general/GeneralSettingsPage.stories.tsx`, `apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/general/Sidebar.stories.tsx`, `apps/dashboard/src/app/team/[team_slug]/(team)/TeamOverviewPage.tsx`, `apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/layout.tsx`, `apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/general/SettingsCard.stories.tsx`, `apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/members/TeamMembersSettingsPage.stories.tsx`, `apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/members/InviteSection.tsx`, `apps/dashboard/src/app/components/Header/TeamHeader/TeamHeaderUI.stories.tsx`, `apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/members/ManageMembersSection.tsx`, `apps/dashboard/src/app/team/[team_slug]/(team)/~/settings/general/GeneralSettingsPage.tsx`

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-09-02 04:06:21 +00:00
MananTank 3dc675e69c Dialog Modal z-index fixes, Fix depedency sort lint error (#4340)
## 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 dialog components in multiple files with new styling classes and z-index values.

### Detailed summary
- Updated `DialogContent` styling and z-index in various files
- Added `dialogOverlayClassName` in multiple dialog components
- Updated dependencies in `react-native-adapter/package.json`

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-09-01 00:22:19 +00:00
MananTank 993973d47e Dashboard color updates and other UI adjustments (#4332)
## Problem solved

Short description of the bug fixed or feature added

<!-- start pr-codex -->

---

## PR-Codex overview
This PR updates the styling of various components by replacing the color "gray.700" with "text-muted-foreground" for consistency and accessibility.

### Detailed summary
- Updated various components to use the class `text-muted-foreground` for consistent styling
- Changed background colors to `bg-background` for improved theme consistency

> The following files were skipped due to too many changes: `apps/dashboard/src/components/engine/overview/transaction-timeline.tsx`, `apps/dashboard/src/components/contract-components/contract-deploy-form/modular-contract-default-modules-fieldset.tsx`, `apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/components/server/cta-card.tsx`, `apps/dashboard/src/app/(dashboard)/(chain)/chainlist/page.tsx`, `apps/dashboard/src/components/settings/AuthorizedWallets/AuthorizedWalletRevokeModal.tsx`, `apps/dashboard/src/components/settings/ApiKeys/Create/index.tsx`, `apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/tx/[txHash]/page.tsx`, `apps/dashboard/src/components/engine/overview/create-backend-wallet-button.tsx`, `apps/dashboard/src/components/engine/contract-subscription/contract-subscriptions-table.tsx`, `apps/dashboard/src/components/contract-components/contract-publish-form/NetworkDropdown.tsx`, `apps/dashboard/src/pages/pricing.tsx`, `apps/dashboard/src/components/cmd-k-search/index.tsx`, `apps/dashboard/src/components/pay/PayConfig.tsx`, `apps/dashboard/src/components/engine/contract-subscription/add-contract-subscription-button.tsx`, `apps/dashboard/src/app/team/[team_slug]/components/tab-switcher.client.tsx`, `apps/dashboard/src/contract-ui/tabs/sources/page.tsx`, `apps/dashboard/src/pages/explore/index.tsx`, `apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/components/server/explorer-section.tsx`, `apps/dashboard/src/components/engine/relayer/add-relayer-button.tsx`, `apps/dashboard/src/app/team/[team_slug]/(team)/TeamOverviewPage.tsx`, `apps/dashboard/src/pages/dashboard/engine/import.tsx`, `apps/dashboard/src/app/(dashboard)/dashboard/connect/pay/page.tsx`, `apps/dashboard/src/components/pay/PayAnalytics/components/common.tsx`, `apps/dashboard/src/components/shared/TWQueryTable.tsx`, `apps/dashboard/src/@/components/ui/NavLink.tsx`, `apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/components/server/ChainOverviewSection.tsx`, `apps/dashboard/src/components/dashboard/HomeProductCard.tsx`, `apps/dashboard/src/components/selects/NetworkSelectorButton.tsx`, `apps/dashboard/src/components/explore/upsells/deploy-your-own.tsx`, `apps/dashboard/tailwind.config.js`, `apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/components/server/ClaimChainSection.tsx`, `apps/dashboard/src/app/(dashboard)/dashboard/connect/ecosystem/[slug]/(active)/components/server/partners-table.tsx`, `apps/dashboard/src/app/(dashboard)/dashboard/connect/ecosystem/[slug]/(active)/components/client/ecosystem-header.client.tsx`, `apps/dashboard/src/app/(dashboard)/(chain)/chainlist/components/client/search.tsx`, `apps/dashboard/src/@/components/ui/CopyTextButton.tsx`, `apps/dashboard/src/components/contract-functions/contract-function.tsx`, `apps/dashboard/src/@/components/blocks/Sidebar.tsx`, `apps/dashboard/src/pages/dashboard/contracts/deploy.tsx`, `apps/dashboard/src/components/homepage/sections/UpgradeModal.tsx`, `apps/dashboard/src/@/components/ui/textarea.tsx`, `apps/dashboard/src/contract-ui/tabs/listings/components/list-form.tsx`, `apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/components/server/SupportedProductsSection.tsx`, `apps/dashboard/src/components/engine/relayer/relayers-table.tsx`, `apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/popular/page.tsx`, `apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/components/server/FaucetSection.tsx`, `apps/dashboard/src/@/components/ui/badge.tsx`, `apps/dashboard/src/components/dashboard/StepsCard.tsx`, `apps/dashboard/src/app/(dashboard)/dashboard/components/sidebar/section.tsx`, `apps/dashboard/src/components/embedded-wallets/Users/Analytics.tsx`, `apps/dashboard/src/components/contract-components/tables/cells.tsx`, `apps/dashboard/src/pages/dashboard/settings/api-keys/index.tsx`, `apps/dashboard/src/components/engine/engine-list.tsx`, `apps/dashboard/src/app/team/[team_slug]/(team)/layout.tsx`, `apps/dashboard/src/@/components/ui/tabs.tsx`, `apps/dashboard/src/app/(dashboard)/dashboard/connect/ecosystem/page.tsx`, `apps/dashboard/src/pages/dashboard/connect/in-app-wallets.tsx`, `apps/dashboard/src/components/selects/NetworkSelectDropdown.tsx`, `apps/dashboard/src/components/explore/contract-card/index.tsx`, `apps/dashboard/src/app/(dashboard)/(chain)/chainlist/components/server/chainlist-card.tsx`, `apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/components/server/BuyFundsSection.tsx`, `apps/dashboard/src/components/explore/upsells/publish-submit.tsx`, `apps/dashboard/src/app/(dashboard)/trending/page.tsx`, `apps/dashboard/src/app/(dashboard)/dashboard/connect/pay/components/pay-ui.client.tsx`, `apps/dashboard/src/contract-ui/tabs/nfts/components/table.tsx`, `apps/dashboard/src/app/team/[team_slug]/[project_slug]/layout.tsx`, `apps/dashboard/src/@/components/ui/checkbox.tsx`, `apps/dashboard/src/components/shared/TWTable.tsx`, `apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/components/client/FaucetButton.tsx`, `apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/components/server/chain-header.tsx`, `apps/dashboard/src/components/engine/explorer/engine-explorer.tsx`, `apps/dashboard/src/@/components/ui/alert.tsx`, `apps/dashboard/src/components/shared/FileInput.tsx`, `apps/dashboard/src/app/(dashboard)/trending/components/trending-table.tsx`, `apps/dashboard/src/components/engine/permissions/access-tokens-table.tsx`, `apps/dashboard/src/app/(dashboard)/(chain)/[chain_id]/(chainPage)/layout.tsx`, `apps/dashboard/src/app/components/Header/DashboardHeader.tsx`, `apps/dashboard/src/components/engine/permissions/admins-table.tsx`, `apps/dashboard/src/app/(dashboard)/support/page.tsx`, `apps/dashboard/src/components/engine/overview/engine-overview.tsx`, `apps/dashboard/src/components/engine/overview/backend-wallets-table.tsx`, `apps/dashboard/src/components/dashboard/Changelog.tsx`, `apps/dashboard/src/components/settings/ApiKeys/index.tsx`, `apps/dashboard/src/components/engine/tier-card.tsx`, `apps/dashboard/src/@/styles/globals.css`, `apps/dashboard/src/theme/index.ts`, `apps/dashboard/src/components/layout/app-shell/index.tsx`, `apps/dashboard/src/components/contract-components/tables/deployed-contracts.tsx`, `apps/dashboard/src/components/engine/overview/transactions-table.tsx`, `apps/dashboard/src/@/components/blocks/app-footer.tsx`, `apps/dashboard/src/app/(dashboard)/styleguide/page.tsx`, `apps/dashboard/src/components/contract-components/import-contract/modal.tsx`

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-08-31 01:09:28 +00:00
kien-ngo c52e1beffb [Dashboard] Fix ERC1155 claim issue (#4335)
## Problem solved

Short description of the bug fixed or feature added

<!-- start pr-codex -->

---

## PR-Codex overview
This PR focuses on updating the `from` field in the `claim-tab.tsx` component to use the `account.address` value.

### Detailed summary
- Updated `from` field in the `claim-tab.tsx` component to use `account.address` value.

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-08-30 18:40:38 +00:00
kien-ngo eac008967c [Dashboard] Add approval step to claim forms (#4326)
<!-- start pr-codex -->

## PR-Codex overview
The focus of this PR is to enhance NFT and token claiming functionality by adding approval checks for ERC20 tokens.

### Detailed summary
- Added approval checks for ERC20 tokens before claiming NFTs and tokens
- Improved error handling and notifications for claiming process
- Ensured account detection before claiming to prevent errors

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-08-30 12:20:26 +00:00
DustinandGitHub f57acc6b24 Update ClaimChainSection.tsx (#4315) 2024-08-30 23:07:40 +12:00
gregfromstl 81c9ee91fa [Playground] Refactor: Move ThirdwebProvider to each individual page for separate context (#4292)
<!-- start pr-codex -->

## PR-Codex overview
The focus of this PR is to refactor the codebase by introducing a `ThirdwebProvider` component and removing unnecessary wallet-related logic from different components.

### Detailed summary
- Introduced `ThirdwebProvider` component to wrap children with `_ThirdwebProvider`
- Removed wallet-related logic from `ConnectSmartAccountPreview`, `SponsoredTxPreview`, `SponsoredTxZksyncPreview` components
- Updated various components to use `ThirdwebProvider` instead of `ThirdwebProvider` directly

> The following files were skipped due to too many changes: `apps/playground-web/src/app/connect/in-app-wallet/page.tsx`, `apps/playground-web/src/app/connect/pay/page.tsx`, `apps/playground-web/src/app/connect/auth/page.tsx`, `apps/playground-web/src/app/connect/sign-in/button/page.tsx`, `apps/playground-web/src/app/connect/blockchain-api/page.tsx`

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-08-30 00:35:39 +00:00
kien-ngo c6d1f79267 [Dashboard] Handle loading state for marketplace ui (#4321)
## Problem solved

Short description of the bug fixed or feature added

<!-- start pr-codex -->

---

## PR-Codex overview
This PR focuses on improving error handling in the `list-form.tsx` file by setting `isFormLoading` to false when an error occurs during NFT approval.

### Detailed summary
- Added `setIsFormLoading(false)` to handle error in NFT approval process.

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-08-30 00:24:32 +00:00
MananTank 3b7890c0fc Add pagination in InApp wallet users table and update tabs (#4325)
## Problem solved

Short description of the bug fixed or feature added

<!-- start pr-codex -->

---

## PR-Codex overview
The focus of this PR is to implement pagination functionality for displaying a specific number of items per page in the Users component of the embedded wallets feature.

### Detailed summary
- Added pagination logic to display a subset of wallets per page based on active page
- Implemented pagination buttons for navigating through multiple pages
- Updated the Users component to show items based on pagination
- Added state management for active page selection
- Updated URL search parameters based on selected tab in the EmbeddedWallets component

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-08-30 00:13:37 +00:00
MananTank 3d60da3717 Fix inApp wallet config form values + show loading state (#4323)
## Problem solved

Short description of the bug fixed or feature added

<!-- start pr-codex -->

---

## PR-Codex overview
The focus of this PR is to improve the loading state handling in the in-app wallets section and refactor the form values handling in the Configure component.

### Detailed summary
- Improved loading state handling in in-app wallets section
- Refactored form values handling in the Configure component

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-08-29 23:49:13 +00:00
MananTank 74753e1dfe Marketplace create listing form UI improvements (#4318)
## Problem solved

Short description of the bug fixed or feature added

<!-- start pr-codex -->

---

## PR-Codex overview
The focus of this PR is to refactor the CreateListingButton component to manage form loading state more efficiently.

### Detailed summary
- Added `useState` to manage form loading state
- Replaced `useSendAndConfirmTransaction` with `useActiveAccount` in `list-button.tsx`
- Replaced `mutation` with `setIsFormLoading` in `list-button.tsx`
- Added `CircleAlertIcon` and form validation for contract address in `list-form.tsx`

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`

<!-- end pr-codex -->
2024-08-29 19:53:09 +00:00