Conversation
🦋 Changeset detectedLatest commit: 71ec508 The changes in this PR will be included in the next version bump. This PR includes changesets to release 25 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
10 Skipped Deployments
|
Visual Regression Test Results ✅ Passed✨ No visual changes detected Chromatic Build: https://www.chromatic.com/build?appId=6493191bf4b10fed8ca7353f&number=360 |
There was a problem hiding this comment.
Pull Request Overview
This PR implements a new useAppKitWallets hook that enables developers to build custom wallet connection UIs. The implementation provides a headless approach to wallet connections, exposing the necessary data and functions while allowing full control over the UI.
Key changes:
- New
useAppKitWalletsReact hook for headless wallet management - Updated
ConnectorController.getConnectorto require namespace parameter - Added
wcFetchingUristate to track WalletConnect URI loading - New utility
ConnectUtilfor unified wallet list management
Reviewed Changes
Copilot reviewed 35 out of 37 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| packages/controllers/exports/react.ts | Adds useAppKitWallets hook with wallet list, connect, and fetch functions |
| packages/controllers/src/controllers/ConnectorController.ts | Updates getConnector to require namespace, removes optional rdns parameter |
| packages/controllers/src/controllers/ConnectionController.ts | Adds wcFetchingUri state for tracking URI loading |
| packages/controllers/src/utils/ConnectUtil.ts | New utility for transforming connectors and wallets into unified list |
| packages/controllers/src/utils/TypeUtil.ts | Moves ConnectorWithProviders interface and adds description field to WcWallet |
| packages/ui/src/components/wui-icon/index.ts | Adds new chain icons (cosmos, polkadot, stellar) |
| apps/laboratory/* | Test implementation and demo components for headless UI |
| pnpm-lock.yaml | Updates zod dependency versions and adds qr-code libraries |
Files not reviewed (1)
- pnpm-lock.yaml: Language not supported
Comments suppressed due to low confidence (1)
apps/laboratory/tests/headless.spec.ts:1
- The condition check on line 21 is redundant since
isPageLoadedis never modified totruein this flow. The code will always load the wallet page. Consider removing the condition or ensuringisPageLoadedis properly tracked.
import { WalletPage } from '@reown/appkit-testing'
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
📦 Bundle Size Check✅ All bundles are within size limits 📊 View detailed bundle sizes> @reown/appkit-monorepo@1.7.1 size /home/runner/work/appkit/appkit > size-limit |
|
All alerts resolved. Learn more about Socket for GitHub. This PR previously contained dependency changes with security issues that have been resolved, removed, or ignored. |
Description
Implements new
useAppKitWalletshook to let users build custom connect user interfaces.Features
Examples
Listing injected wallets:
Listing WalletConnect wallets:
Connecting to a wallet:
Changes
useAppKitWalletshook and utils around itConnectUtilType of change
Associated Issues
For Linear issues: Closes APKT-4134, APKT-4133, APKT-4165, APKT-4135, APKT-4153, APKT-4180, APKT-4155
For GH issues: closes #...
Showcase (Optional)
If there is a UI change include the screenshots with before and after state.
If new feature is being introduced, include the link to demo recording.
Checklist
Note
Add
useAppKitWalletshook for listing/searching/connecting injected and WalletConnect wallets, plus a headless example and tests.useAppKitWalletshook export inpackages/appkit/exports/react.ts; wire throughappkit-base-clientandConfigUtil.ConnectionController,ConnectorController,OptionsController) and utils (ConnectUtil,AssetUtil,TypeUtil,ConstantsUtil).packages/appkit/exports/constants.tsand controllers exports.w3m-connector-listand wallet-button scaffold to support new hook-driven connection.InjectedWalletItem,WcWalletItem, QR, lists) andAppkitConnectDrawer.useDebounceValue.examples/next-appkit-headlessNext.js app demonstrating headless usage (UI components, config, Tailwind setup).wallet-buttonand controllers.Written by Cursor Bugbot for commit 71ec508. This will update automatically on new commits. Configure here.