AgUiGenerativeController class

Processes a Stream<AgUiEvent> and maintains a live list of AgUiGenerativeItems for rendering by AgUiGenerativeView.

Generative UI works in two complementary ways:

Via tool calls: the agent calls a tool whose name matches a component in widgetRegistry. The controller replaces the tool-call placeholder with the rendered component.

Via CUSTOM events: the agent emits {"type":"CUSTOM","name":"render","value": {"component":"MyCard","props":{...}}}. The controller resolves it through widgetRegistry.

Frontend tools (in toolRegistry) are executed locally on the device; their results are shown inline without a round-trip to the backend.

Inheritance

Constructors

AgUiGenerativeController({required Stream<AgUiEvent> events, AgUiFrontendToolRegistry? toolRegistry, AgUiWidgetRegistry? widgetRegistry})

Properties

hashCode int
The hash code for this object.
no setterinherited
hasListeners bool
Whether any listeners are currently registered.
no setterinherited
items List<AgUiGenerativeItem>
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
toolRegistry AgUiFrontendToolRegistry?
final
widgetRegistry AgUiWidgetRegistry?
final

Methods

addListener(VoidCallback listener) → void
Register a closure to be called when the object changes.
inherited
clear() → void
Remove all items and cancel pending state. Does not cancel the stream.
dispose() → void
Discards any resources used by the object.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
notifyListeners() → void
Call all the registered listeners.
inherited
removeListener(VoidCallback listener) → void
Remove a previously registered closure from the list of closures that are notified when the object changes.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited