duit_kernel library

Classes

ActionDependency
Represents a dependency for a server action.
ActionExecutor
The ActionExecutor is an abstract class responsible for executing actions.
AddOp
Add operation.
AlignmentTweenDescription
Description for an AlignmentTween animation that animates between AlignmentGeometry values.
AnimationInterval
An AnimationInterval represents a time interval for an animation.
BorderTweenDescription
Description for a BorderTween animation that animates between Border values.
BoxConstraintsTweenDescription
Description for a BoxConstraintsTween animation that animates between BoxConstraints values.
ColorTweenDescription
Description for a ColorTween animation that animates between Color values.
CommandEvent
CommonEventGroup
ComponentDescription
Description of the component for registering it in the DuitRegistry under the key corresponding to the tag property
CustomEvent
DebugLogger
The DebugLogger interface defines a contract for logger implementations.
DecorationTweenDescription
Description for a DecorationTween animation that animates between Decoration values.
DefaultActionExecutor
Executes a given ServerAction.
DefaultActionParser
The DefaultActionParser is a default parser for ServerAction objects.
DefaultEventParser
The DefaultEventParser is a default parser for ServerEvent objects.
DefaultEventResolver
DefaultLogger
The DefaultLogger class provides a default logger implementation for the DUIT library.
DefaultThemeToken
A concrete implementation of ThemeToken that can be used directly.
DependentAction
A dependent action is an action that has dependencies.
DuitRegistry
The DuitRegistry class is responsible for registering and retrieving model factories, build factories, and attributes factories for custom DUIT elements.
DuitTheme
DuitTweenDescription<T>
Base class for describing a Tween object.
DuitView
The DuitView class is an abstract interface that defines the methods a Duit view must implement. It provides a way to render a Duit model to a Flutter widget.
EdgeInsetsTweenDescription
Description for an EdgeInsetsTween animation that animates between EdgeInsetsGeometry values.
ElementTree
Represents an abstract tree structure for rendering DUIT elements.
ElementTreeEntry
An abstract base class representing an entry in the DUIT element tree.
EventResolver
ExecutionOptions
Configuration options for controlling action execution behavior.
ExternalEventHandler
An interface that defines a set of methods that, for some reason, cannot be processed by the library and cannot be implemented by the user.
FlutterPropertyKeys
A collection of Flutter widget property names used in Duit as default keys for DuitDataSource methods
GroupMember
HttpActionMetainfo
Represents the metadata for an HTTP action.
JsonPatchApplier
A minimal JSON Patch (https://datatracker.ietf.org/doc/html/rfc6902) applier with support for add/replace/remove operations and path-copy semantics.
LocalAction
A local action is an action that is executed locally in the client.
LoggingManager
A class that provides logging capabilities for the Duit UI system.
NullEvent
OpenUrlEvent
Parser<T>
A base interface for parsers in the DUIT library.
PatchOp
JSON Patch operation base type.
PatchOps
Convenience factory for creating patch operations.
PatchTemplate
Patch template describes where and how to write a value into the component layout when building an instance.
RemoteCommand
A command that is sent to control an action by interacting with an action controller identified by controllerId. The command specifies the type of action to be executed.
RemoveOp
Remove operation.
ReplaceOp
Replace operation.
ScriptAction
A script action represents an action that is executed using a script.
ScriptDefinition
The ScriptDefinition class represents a script definition used for script actions.
ScriptRunner<TOptions>
The base class required to implement a script runner
SequencedEventGroup
SequencedGroupMember
ServerAction
The ServerAction class represents an action that was sent by the server.
ServerEvent
The ServerEvent class represents an event that was sent by the server.
SizeTweenDescription
Description for a SizeTween animation that animates between Size values.
SlowpokeCurve
A custom animation curve that slows down the animation progress.
Streamer
An abstract interface class for providing a stream of events.
TextStyleTweenDescription
Description for a TextStyleTween animation that animates between TextStyle values.
ThemePreprocessor
ThemeToken
An abstract class representing a token for a theme in the application.
TimerEvent
Transport
Base class for transport implementations.
TransportAction
A transport action represents an action that is executed using a transport mechanism.
TransportOptions
The base options for configuring a transport.
TweenDescription
Description for a standard Tween animation that animates between double values.
TweenDescriptionGroup
A group of tween descriptions that can be executed together.
UIDriver
UIDriverErrorEvent
Represents an error event in the UI driver.
UIDriverEvent
Base class for driver events
UIDriverViewEvent
Represents a view event in the UI driver.
UIElementController
Base class for ViewController objects.
UnknownAction
An unknown action is an action that the framework does not know how to parse.
UnknownThemeToken
A ThemeToken that represents a theme that is not recognized.
UpdateEvent
Represents an update event.
ValueReference
A class representing a data model that can be used to merge with a component description
ViewAttribute
Represents a wrapper for view attributes.
WidgetDisplayStateNotifier
Notifies the driver about changes in the display state of widgets.

Enums

AnimationMethod
A property indicating which method will be called on the controller when the animation is triggered
AnimationTrigger
Describes when an animation should trigger.
ExecutionModifier
Defines the execution modifier for actions.
PatchSemantics
Semantics for how to apply the patch to the target location.
ThemeOverrideRule
TweenType
UserDefinedHandlerKind
The kind of user-defined event handler to be attached to an action manager.

Mixins

FocusCapabilityDelegate
A mixin that provides an interface for managing focus nodes within the Duit kernel driver API.
LoggingCapabilityDelegate
A mixin that provides logging capabilities compatible with Talker API.
NativeModuleCapabilityDelegate
A mixin that provides capabilities for managing and interacting with native code in the Duit UI system. Classes that mix in this delegate should provide concrete implementations for handling native module interactions, such as invoking native methods and initializing the native module.
ScriptingCapabilityDelegate
A mixin that provides capabilities for managing and run scripts in the Duit UI system. Classes that mix in this delegate should provide concrete implementations for handling script execution, evaluation, and initialization.
ServerActionExecutionCapabilityDelegate
A mixin that provides an interface for managing ServerAction execution and ServerEvent handling
TransportCapabilityDelegate
A mixin that provides capabilities for managing and interacting with transport in the Duit UI system. Classes that mix in this delegate should provide concrete implementations for handling server actions, requests, and connections to the server.
UIControllerCapabilityDelegate
Mixin that provides an interface for managing and interacting with UI element controllers in the Duit driver.
ViewModelCapabilityDelegate
A mixin that provides capabilities for managing and interacting with views in the Duit UI system. Classes that mix in this delegate should provide concrete implementations for handling driver events, widget build context, error reporting, and display state changes.

Extension Types

DuitDataSource
A wrapper for JSON data that provides type-safe access to Dart/Flutter properties.

Constants

envAttributeWarmUpEnabled → const bool
envPreferInlineFn → const bool
preferInline → const Object

Functions

duitJsonEncode(Object? object) String
Converts any object to a JSON string representation with custom encoding support.

Typedefs

BuildFactory = Widget Function(ElementTreeEntry model, [Iterable<Widget> subviews])
The Renderer is a function type that returns a widget representation of a DUITElement.
CustomCurveParser = Curve Function(Map<String, dynamic>)
Parser for creating Curve from a data map.
TokenizationCallback = ThemeToken? Function(String type, Map<String, dynamic> themeData)
Function for custom tokenization of themes.
UserDefinedEventHandler = FutureOr<void> Function(BuildContext context, String path, Object? extra)
Signature for functions that handle user-defined events.

Exceptions / Errors

MissingCapabilityMethodImplementation
An Exception thrown when a required method implementation is missing from a class that uses a particular mixin.