diff --git a/apps/scan/app/[locale]/validators/[address]/page.tsx b/apps/scan/app/[locale]/validators/[address]/page.tsx index d4a950a..a39ae2f 100644 --- a/apps/scan/app/[locale]/validators/[address]/page.tsx +++ b/apps/scan/app/[locale]/validators/[address]/page.tsx @@ -186,6 +186,9 @@ export default function ValidatorDetailPage({ params }: { params: Promise<{ addr } /> {st.icon}{st.text}} /> + {validator.registered_at !== undefined && validator.registered_at > 0 && ( + } /> + )} {validator.stake !== undefined && ( {formatNumber(validator.stake)} SRX} /> )} diff --git a/apps/scan/lib/api.ts b/apps/scan/lib/api.ts index 2522cb3..ceb3920 100644 --- a/apps/scan/lib/api.ts +++ b/apps/scan/lib/api.ts @@ -553,6 +553,9 @@ export async function fetchValidators(network: NetworkId) { return { ...v, name: v.name ?? legacy?.name ?? "", + // `registered_at` (unix seconds) is on /validators but not /staking/validators. + // Carry it across so the detail page can show "online since ". + registered_at: v.registered_at ?? legacy?.registered_at, // Prefer the larger of the two block counters. /staking/validators // tracks blocks_signed which can reset on chain restart; legacy // /validators carries the cumulative blocks_produced. Take whichever