Extract shared Uniswap ABIs (WETH_ABI, SWAP_ROUTER_ABI, UNISWAP_FACTORY_ABI, UNISWAP_POOL_ABI), utility functions (isRecord, coerceString, getErrorMessage, ensureAddress), and the wrap→approve→exactInputSingle flow into a new composable useSwapKrk(). Both LocalSwapWidget and CheatsView now delegate to this single source of truth, so swap logic changes only need to be made in one place. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| assets | ||
| components | ||
| composables | ||
| contracts | ||
| directives | ||
| layouts | ||
| router | ||
| services | ||
| types | ||
| utils | ||
| views | ||
| App.vue | ||
| config.ts | ||
| env.d.ts | ||
| main.ts | ||
| wagmi.ts | ||