fix(ui): stat-tile overflow + visible build version
Two issues:
1. _StatTile in the Doctor page overflowed by ~6px on narrow
widths because the Row containing the icon + label "AUDIT
CHAIN" with letterSpacing=0.6 didn't fit in the ~90px
constraint per tile (4 tiles in a Row sharing the page
width). Fix: smaller icon (16→14), tighter gap, label wrapped
in Flexible with TextOverflow.ellipsis, and the longest label
shortened "AUDIT CHAIN" → "AUDIT" with the chain count moved
to the subtitle.
2. The new redesign was easy to mistake for the previous build
from the outside. Add a small monospaced version line right
under "F∆I Studio" in the sidebar header:
F∆I Studio
v0.7.1 · warm-minimalism
Self-identifying — "wrong build" is now visible without
reading the about dialog.
Bumps fai_studio 0.7.0 -> 0.7.1.
Signed-off-by: flemming-it <stefan.a.flemming@googlemail.com>
This commit is contained in:
parent
671194c105
commit
d5631177e0
3 changed files with 28 additions and 12 deletions
|
|
@ -16,6 +16,11 @@ import 'theme/theme.dart';
|
|||
import 'theme/tokens.dart';
|
||||
import 'widgets/widgets.dart';
|
||||
|
||||
/// Studio's own build version. Bump on every UI commit so the
|
||||
/// running app self-identifies — visible in the sidebar header
|
||||
/// and quick-glance proof that you're seeing the current build.
|
||||
const String kStudioVersion = '0.7.1';
|
||||
|
||||
Future<void> main() async {
|
||||
WidgetsFlutterBinding.ensureInitialized();
|
||||
// Restore the persisted endpoint and theme mode before the
|
||||
|
|
@ -218,7 +223,15 @@ class _Sidebar extends StatelessWidget {
|
|||
fontWeight: FontWeight.w600,
|
||||
),
|
||||
),
|
||||
const SizedBox(height: FaiSpace.xs),
|
||||
const SizedBox(height: 2),
|
||||
Text(
|
||||
'v$kStudioVersion · warm-minimalism',
|
||||
style: FaiTheme.mono(
|
||||
size: 10,
|
||||
color: theme.colorScheme.primary,
|
||||
),
|
||||
),
|
||||
const SizedBox(height: FaiSpace.md),
|
||||
// Connection pill.
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: FaiSpace.lg),
|
||||
|
|
|
|||
|
|
@ -142,10 +142,10 @@ class _SummaryStrip extends StatelessWidget {
|
|||
),
|
||||
const SizedBox(width: FaiSpace.md),
|
||||
_StatTile(
|
||||
label: 'Audit chain',
|
||||
label: 'Audit',
|
||||
value: snapshot.chainHealthy ? '✓' : '⚠',
|
||||
subtitle:
|
||||
'${snapshot.eventChainVerified}/${snapshot.eventChainTotal} verified',
|
||||
'${snapshot.eventChainVerified}/${snapshot.eventChainTotal} chain',
|
||||
icon: Icons.shield_outlined,
|
||||
tone: snapshot.chainHealthy
|
||||
? FaiPillTone.success
|
||||
|
|
@ -196,16 +196,19 @@ class _StatTile extends StatelessWidget {
|
|||
children: [
|
||||
Row(
|
||||
children: [
|
||||
Icon(icon, size: 16, color: theme.colorScheme.onSurfaceVariant),
|
||||
const SizedBox(width: FaiSpace.sm),
|
||||
Text(
|
||||
Icon(icon, size: 14, color: theme.colorScheme.onSurfaceVariant),
|
||||
const SizedBox(width: FaiSpace.xs),
|
||||
Flexible(
|
||||
child: Text(
|
||||
label.toUpperCase(),
|
||||
overflow: TextOverflow.ellipsis,
|
||||
style: theme.textTheme.labelSmall?.copyWith(
|
||||
color: theme.colorScheme.onSurfaceVariant,
|
||||
letterSpacing: 0.6,
|
||||
letterSpacing: 0.5,
|
||||
fontSize: 10,
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
const SizedBox(height: FaiSpace.sm),
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
name: fai_studio
|
||||
description: "F∆I Studio — desktop GUI for the F∆I hub"
|
||||
publish_to: 'none'
|
||||
version: 0.1.0
|
||||
version: 0.7.1
|
||||
|
||||
environment:
|
||||
sdk: ^3.11.0-200.1.beta
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue