feat: 添加多链支持和 Lending 借贷系统

- 新增 ARB Sepolia + BNB Testnet 多链支持
- 添加 LendingPanel 借贷系统组件
- 添加 LendingAdminPanel 管理面板
- 添加 USDCPanel USDC 操作组件
- 添加 HoldersPanel 持有人信息组件
- 添加 AutoTestPanel 自动化测试组件
- 重构 LP 组件为模块化结构 (LP/)
- 添加多个调试和测试脚本
- 修复 USDC 精度动态配置
- 优化合约配置支持多链切换

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-26 23:32:29 +08:00
parent c8427caa01
commit 5cb64f881e
80 changed files with 18342 additions and 1117 deletions

View File

@@ -0,0 +1,30 @@
import { createPublicClient, http, formatEther } from 'viem'
import { arbitrumSepolia } from 'viem/chains'
import { mnemonicToAccount } from 'viem/accounts'
const client = createPublicClient({
chain: arbitrumSepolia,
transport: http('https://sepolia-rollup.arbitrum.io/rpc'),
})
const MAIN_ADDRESS = '0xa013422A5918CD099C63c8CC35283EACa99a705d'
const TEST_MNEMONIC = 'test test test test test test test test test test test junk'
async function main() {
console.log('📊 所有账户 ETH 余额:\n')
// 主账户
const mainBalance = await client.getBalance({ address: MAIN_ADDRESS })
console.log(`主账户: ${MAIN_ADDRESS}`)
console.log(` ETH: ${formatEther(mainBalance)}\n`)
// 测试账户
console.log('测试账户:')
for (let i = 0; i < 5; i++) {
const account = mnemonicToAccount(TEST_MNEMONIC, { addressIndex: i })
const balance = await client.getBalance({ address: account.address })
console.log(` ${i + 1}. ${account.address}: ${formatEther(balance)} ETH`)
}
}
main()