mirror of
https://github.com/NoFxAiOS/nofx.git
synced 2026-07-09 22:10:57 +08:00
feat: implement hybrid database architecture and frontend encryption
- Add PostgreSQL + SQLite hybrid database support with automatic switching - Implement frontend AES-GCM + RSA-OAEP encryption for sensitive data - Add comprehensive DatabaseInterface with all required methods - Fix compilation issues with interface consistency - Update all database method signatures to use DatabaseInterface - Add missing UpdateTraderInitialBalance method to PostgreSQL implementation - Integrate RSA public key distribution via /api/config endpoint - Add frontend crypto service with proper error handling - Support graceful degradation between encrypted and plaintext transmission - Add directory creation for RSA keys and PEM parsing fixes - Test both SQLite and PostgreSQL modes successfully 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: tinkle-community <tinklefund@gmail.com>
This commit is contained in:
@@ -12,7 +12,7 @@ export const TRADER_COLORS = [
|
||||
'#a78bfa', // violet-400
|
||||
'#4ade80', // green-400
|
||||
'#fb7185', // rose-400
|
||||
];
|
||||
]
|
||||
|
||||
/**
|
||||
* 根据trader的索引位置获取颜色
|
||||
@@ -24,8 +24,8 @@ export function getTraderColor(
|
||||
traders: Array<{ trader_id: string }>,
|
||||
traderId: string
|
||||
): string {
|
||||
const traderIndex = traders.findIndex((t) => t.trader_id === traderId);
|
||||
if (traderIndex === -1) return TRADER_COLORS[0]; // 默认返回第一个颜色
|
||||
const traderIndex = traders.findIndex((t) => t.trader_id === traderId)
|
||||
if (traderIndex === -1) return TRADER_COLORS[0] // 默认返回第一个颜色
|
||||
// 如果超出颜色池大小,循环使用
|
||||
return TRADER_COLORS[traderIndex % TRADER_COLORS.length];
|
||||
return TRADER_COLORS[traderIndex % TRADER_COLORS.length]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user