chain-studio-flow-editor/lib/fai_studio_flow_editor.dart
flemming-it 1f5601a461 feat(editor): FaiEditorStyle + frosted glass panel + pattern/zoom dropdowns
Visual-effect knobs (FaiEditorStyle) the host can override —
distinct from ColorScheme, which stays orthogonal. Today
Studio passes it through FlowEditorPage's new style:
parameter; tomorrow a theme plugin can ship both colours and
effects in one move.

Two presets ship today: modern (frosted glass, gradient
backdrop, animated flow, shadowed nodes — the default) and
minimal (everything off, flat surfaces — accessibility /
reduce-motion / low-spec).

Properties panel rebuilt as a floating sidebar with
BackdropFilter blur when glass-style is on; falls back to
the pre-0.7 flush-divider layout under solid style.

Pattern + zoom controls promoted to PopupMenuButton dropdowns
so operators reach a specific zoom level / pattern in one
click instead of cycling.

Bumps fai_studio_flow_editor to 0.8.0.

Signed-off-by: flemming-it <sf@flemming.it>
2026-06-01 18:10:51 +02:00

40 lines
1.5 KiB
Dart

/// Inline flow editor for F∆I Studio — swappable.
///
/// Studio depends on this package via pubspec.yaml. To use
/// a different editor, fork this repo, change the
/// implementation, point Studio's pubspec at the fork,
/// rebuild Studio.
///
/// Public surface:
///
/// * [FlowEditorPage] — the page widget Studio embeds as
/// its Flows destination. Three tabs over one in-memory
/// flow: graph (drag-and-drop WYSIWYG), text (raw YAML),
/// run (inputs form + live step progress + outputs).
/// * [FlowEditorLocale] — render language for inline
/// strings. Studio passes its active Locale through.
/// * [FlowRunDriver] — host-supplied bridge to the hub.
/// Studio implements it with the gRPC SDK; a CLI host
/// could shell out; a test harness can stub it in-memory.
/// * [FlowRunEvent] family — events the driver streams
/// during a run (StepStarted, StepCompleted, …).
/// * [FlowOutputValue] family — typed outputs the driver
/// returns when the run finishes.
library;
export 'src/editor_style.dart'
show FaiEditorStyle, EditorCanvasBackdrop, EditorPanelStyle;
export 'src/flow_editor_page.dart' show FlowEditorPage;
export 'src/l10n.dart' show FlowEditorLocale;
export 'src/run_driver.dart'
show
FlowRunDriver,
FlowRunEvent,
StepStarted,
StepCompleted,
StepFailed,
StepAwaitingApproval,
FlowOutputValue,
FlowOutputText,
FlowOutputJson,
FlowOutputBytes;