chain-studio/lib/widgets/widgets.dart
flemming-it 8f5cd2528b
Some checks failed
Security / Security check (push) Failing after 1s
feat(studio): central error helpers + inline log viewer + Today CTAs
Bundles the error-UX overhaul and the inline log viewer:

  - New `FaiLog` (`~/.fai/logs/studio-errors.log`, 256 KiB rotation,
    JSON-per-line). Every operator-visible failure is appended so
    `fai admin doctor` and the new viewer can show the trail
    without the operator having to reproduce the failure.
  - New `showFaiErrorSnack` / `showFaiErrorDialog` helpers wrap
    `FaiErrorBox` in copyable surfaces; 27 ad-hoc
    `SnackBar(content: Text(e.toString()))` sites swept to use
    them (settings, doctor, audit, store, module sheet, system-AI
    editor, flow output).
  - New `FaiLogViewer` modal (`showFaiLogViewer`) renders log
    files inline with line numbers, JSON-key + `[level]` token
    colouring, Copy-all, Refresh, Open-externally. Doctor's
    daemon-paths panel grows a "View" button next to "Open" for
    every `.log` row and now also lists the Studio errors log.
  - Today carousel: CTAs now actually re-run search after a
    `filterCategory` / `runQuery` story is tapped (was only
    flipping the chip state). Fallback story list bumped to 8.
  - Editor bumped to git ref carrying 0.15.0 (type-token
    colouring + analyzer diagnostics).

Studio bumped to 0.62.0.

Signed-off-by: flemming-it <stefan.a.flemming@googlemail.com>
2026-06-04 02:08:15 +02:00

19 lines
598 B
Dart

// Barrel file for the F∆I Studio widget library.
//
// Pages should `import '../widgets/widgets.dart';` and use the
// primitives directly — no Material `Card` / generic `Container`
// soup in page code.
export 'fai_card.dart';
export 'fai_data_row.dart';
export 'fai_delta_mark.dart';
export 'fai_empty_state.dart';
export 'fai_en_badge.dart';
export 'fai_error_box.dart';
export 'fai_flow_output.dart';
export 'fai_log_viewer.dart';
export 'fai_module_sheet.dart';
export 'fai_pill.dart';
export 'fai_settings_dialog.dart';
export 'fai_status_dot.dart';
export 'fai_system_ai_editor.dart';