NyFormBuilder class

A builder widget for forms that lets developers create custom fields inline.

NyFormBuilder wraps a developer-provided builder function, allowing any widget to participate in the form's value lifecycle without creating a separate NyFieldStatefulWidget subclass.

Example usage:

Field.builder(
  'favorite_color',
  builder: (context, onChanged, value, setState) {
    return ColorPicker(
      selected: value,
      onColorChanged: (color) {
        onChanged(color);
        setState(); // call setState if your widget needs a rebuild
      },
    );
  },
  value: Colors.blue,
)
Inheritance
Available extensions

Constructors

NyFormBuilder.fromField(Field field, {Key? key, required Function builder})

Properties

builder → Function
final
child → dynamic
The child widget or state instance.
finalinherited
field → Field
final
formField → Field?
Returns the Field associated with this widget, if any.
no setteroverride
hashCode → int
The hash code for this object.
no setterinherited
key → Key?
Controls how one widget replaces another widget in the tree.
finalinherited
onChanged → dynamic Function(dynamic value)?
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
state → String?
The state name identifier for this widget.
finalinherited

Methods

connectiveOr({required Widget offline}) → Widget

Available on Widget, provided by the ConnectiveExtension extension

Wraps the widget in a Connective that shows an offline placeholder.
createElement() → StatefulElement
Creates a StatefulElement to manage this widget's location in the tree.
inherited
createState() → State<StatefulWidget>
Creates the mutable state for this widget at a given location in the tree.
override
debugDescribeChildren() → List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
inherited
faderBottom({double strength = 0.2, Color color = Colors.black}) → FadeOverlay

Available on StatefulWidget, provided by the NyStatefulExt extension

Make gradient fader from the bottom of the widget. strength ranges from 0.0 (subtle) to 1.0 (strong).
faderFrom({double strength = 0.2, Color color = Colors.black, AlignmentGeometry begin = Alignment.topCenter, AlignmentGeometry end = Alignment.bottomCenter}) → FadeOverlay

Available on StatefulWidget, provided by the NyStatefulExt extension

Make gradient fader with custom alignment. strength ranges from 0.0 (subtle) to 1.0 (strong).
faderLeft({double strength = 0.2, Color color = Colors.black}) → FadeOverlay

Available on StatefulWidget, provided by the NyStatefulExt extension

Make gradient fader from the left of the widget. strength ranges from 0.0 (subtle) to 1.0 (strong).
faderRight({double strength = 0.2, Color color = Colors.black}) → FadeOverlay

Available on StatefulWidget, provided by the NyStatefulExt extension

Make gradient fader from the right of the widget. strength ranges from 0.0 (subtle) to 1.0 (strong).
faderTop({double strength = 0.2, Color color = Colors.black}) → FadeOverlay

Available on StatefulWidget, provided by the NyStatefulExt extension

Make gradient fader from the top of the widget. strength ranges from 0.0 (subtle) to 1.0 (strong).
flexible({Key? key, int flex = 1, FlexFit fit = FlexFit.loose}) → Flexible

Available on StatefulWidget, provided by the NyStatefulExt extension

Make a StatefulWidget Flexible.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
onlyOffline() → Widget

Available on Widget, provided by the ConnectiveExtension extension

Only shows the widget when offline, otherwise shows nothing.
onlyOnline() → Widget

Available on Widget, provided by the ConnectiveExtension extension

Only shows the widget when online, otherwise shows nothing.
paddingOnly({double left = 0.0, double top = 0.0, double right = 0.0, double bottom = 0.0}) → Padding

Available on StatefulWidget, provided by the NyStatefulExt extension

Add padding to the widget.
paddingSymmetric({double horizontal = 0.0, double vertical = 0.0}) → Padding

Available on StatefulWidget, provided by the NyStatefulExt extension

Add symmetric padding to the widget.
pullable({required Future<void> onRefresh()?, PullableConfig? pullableConfig}) → Widget

Available on Widget, provided by the NyWidgetExt extension

Make a widget pullable using the Pullable widget.
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toSkeleton({Key? key, bool? ignoreContainers, bool? justifyMultiLineText, Color? containersColor, bool ignorePointers = true, bool enabled = true, PaintingEffect? effect, TextBoneBorderRadius? textBoneBorderRadius}) → Skeletonizer

Available on Widget, provided by the NyWidgetExt extension

Make a widget a skeleton using the Skeletonizer package.
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) → String
A string representation of this object.
inherited
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) → String
Returns a string representation of this node and its descendants.
inherited
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String
Returns a one-line detailed description of the object.
inherited
toStringShort() → String
A short, textual description of this widget.
inherited
visibleWhen(bool condition) → Widget

Available on StatefulWidget, provided by the NyStatefulExt extension

Make a widget visible when a condition is true.

Operators

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

Static Methods

stateActions(String stateName) → FormBuilderStateActions