feat(ui): shareholder-grade redesign + live "Your Club" account panel
- New theme.rs design system: palette, embedded fonts, egui Visuals/Style, card()/status_pill() helpers. - Branded hero header (OF monogram), left nav rail, card-based dashboard, console-style Logs, themed Config tab, window/taskbar icon. - New account_monitor.rs: background AccountMonitor (mirrors HealthMonitor, 5s non-blocking poll) driving a live "Your Club" dashboard card (club name/abbr, manager, COINS hero number, level + XP bar, unopened packs, funds) with loading/offline/error states. - account_sync.rs/app.rs/config.rs/main.rs wired to the monitor + theme. All existing launch/health/preflight/service/config logic preserved.
This commit is contained in:
+12
-1
@@ -24,14 +24,25 @@ pub struct AccountSyncResult {
|
||||
pub account: AccountSummary,
|
||||
}
|
||||
|
||||
#[derive(Debug, Deserialize)]
|
||||
#[derive(Debug, Clone, Deserialize)]
|
||||
#[serde(rename_all = "camelCase")]
|
||||
pub struct AccountSummary {
|
||||
pub persona_id: u64,
|
||||
pub persona_name: String,
|
||||
/// Club identity for the account bar. Optional in older envelopes.
|
||||
#[serde(default)]
|
||||
pub club_name: String,
|
||||
#[serde(default)]
|
||||
pub club_abbr: String,
|
||||
pub level: u32,
|
||||
pub experience: u32,
|
||||
/// XP required for the next level. Optional; 0 means "unknown".
|
||||
#[serde(default)]
|
||||
pub experience_max: u32,
|
||||
pub account_funds: u32,
|
||||
/// EASFC funds ceiling. Optional; 0 means "unknown".
|
||||
#[serde(default)]
|
||||
pub account_funds_cap: u32,
|
||||
pub coins: i64,
|
||||
pub unopened_packs: usize,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user