DeFi positions
The Dashboard shows your active DeFi positions across lending protocols and Uniswap V3 LP pools. You can manage these positions directly — withdraw from lending, remove LP liquidity, and collect accumulated fees.Lending positions
The DeFiPositions component shows your active lending positions (only renders if you have positions — returns null otherwise):Withdraw flow
Clicking Withdraw opens the WithdrawModal:1
Confirmation
Shows protocol name with icon, position balance to withdraw. Click Withdraw to proceed.
2
Processing
Multi-step execution with progress indicators. Transaction link appears when submitted. Uses
useDefiWithdraw() hook.3
Success
Checkmark icon, confirmation message, completed transaction link. Positions refetch automatically after successful withdrawal.
4
Error (if applicable)
Error details displayed with a Retry button.
Uniswap V3 LP positions
The PositionsPanel shows your Uniswap V3 liquidity positions: Each PositionCard displays:Remove liquidity flow
The RemoveLiquidityModal supports two modes:- Remove Liquidity
- Collect Fees
Withdraws your liquidity from the pool:
- Shows estimated token amounts you’ll receive
- Collect fees checkbox — optionally collect accumulated fees during removal
- Multi-step execution: approval → remove → (collect fees if checked)
- Transaction hash links to block explorer
Add liquidity
New LP positions are created through the Dashboard’s DeFi swap/pools interface:PoolsPanel
Browse and add liquidity to Uniswap V3 pools:- Chain tabs: Base, Ethereum, Polygon
- Search input: Filter pools by token symbol
- Pool cards: Token pair, fee tier, TVL, estimated APR, volume, liquidity distribution
- Click a pool to open the AddLiquidityModal
AddLiquidityModal
LP positions require the wallet to be connected. The panel shows a wallet connection prompt if not authenticated. Position data comes from on-chain Uniswap V3 contracts via the
useUniswapPositions() hook.
