Replaces the read-only System AI block in Settings with a real
editor. Operator never has to touch ~/.fai/config.yaml again
to change provider, endpoint, model, API-key env-var, or
privacy mode.
UX choices that align with the zero-learning-curve rule:
* Provider dropdown lists Ollama / OpenAI / LM Studio / vLLM
/ Custom by friendly name. Each selection auto-fills the
endpoint and api_key_env defaults — but only when the
field is still empty or matches a different preset's
default, so manual overrides are never clobbered.
* Each provider has a one-line description rendered under
the dropdown ("Ollama → Local `ollama serve`. Models stay
on your machine. No API key needed.") and a model-hint
placeholder ("gemma3:4b · llama3.2:3b · qwen2.5-coder:7b")
that goes away when a model is typed.
* Privacy mode is a vertical radio group with each option's
description in place — no doc-lookup needed.
* "Test connection" sends an `ok`-ping and renders the
same error-kind → fix-hint mapping the audit drill-down
uses.
* "Save" persists + hot-reloads the hub. No daemon restart
required. UI status badge flips to "enabled · <privacy>"
immediately.
`fai_dart_sdk` 0.5.0 carries the underlying `updateSystemAi` /
`testSystemAi` RPCs.
Signed-off-by: flemming-it <stefan.a.flemming@googlemail.com>
15 lines
480 B
Dart
15 lines
480 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_module_sheet.dart';
|
|
export 'fai_pill.dart';
|
|
export 'fai_settings_dialog.dart';
|
|
export 'fai_status_dot.dart';
|
|
export 'fai_system_ai_editor.dart';
|