### Example createState Implementation Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormRenderer/createState.html Subclasses should override this method to return a newly created instance of their associated State subclass. This ensures proper state management for widgets. ```dart @override State createState() => _SomeWidgetState(); ``` -------------------------------- ### Example createState Implementation Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/LazyStreamBuilder/createState.html Subclasses should override this method to return a newly created instance of their associated State subclass. The framework may call this method multiple times. ```dart @override State createState() => _SomeWidgetState(); ``` -------------------------------- ### Accessing FormManager Instance Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProvider/of.html Use this method to get a `FormManager` instance from the widget tree. Ensure the `BuildContext` used is below a `FormProvider` that provides the desired `FormManager` type. ```dart FormProvider.of(context) ``` -------------------------------- ### Get Form Element Type Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormElementRenderer/formElementType.html This getter returns the type of the form element. It is typically used to identify the specific type of form element being rendered or processed. ```dart Type get formElementType => TFormElement; ``` -------------------------------- ### FormRenderService Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormRenderService-class.html Initializes a new instance of the FormRenderService class. ```APIDOC ## FormRenderService ### Description Initializes a new instance of the FormRenderService class. ### Parameters - **renderers** (List>) - Required - A list of renderers for different form element types. - **dispatcher** (FormElementEventDispatcherFunction) - Required - The function to dispatch form element events. ``` -------------------------------- ### FormProvider Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProvider/FormProvider.html Initializes a new instance of the FormProvider widget. ```APIDOC ## FormProvider constructor FormProvider({ Key? key, required CreateFormManager create, Widget? child, bool? lazy, }) ### Description Initializes a new instance of the FormProvider widget. This constructor requires a `create` function to instantiate the `FormManager` and optionally accepts a `child` widget and a `lazy` boolean to control form manager instantiation. ### Parameters #### Named Parameters - **key** (Key?): An optional key for the widget. - **create** (required CreateFormManager): A function that creates an instance of the `FormManager`. - **child** (Widget?): An optional child widget to be displayed below the form. - **lazy** (bool?): If true, the `FormManager` will be created lazily when first accessed. Defaults to true. ``` -------------------------------- ### FormRenderService Constructor Implementation Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormRenderService/FormRenderService.html This implementation shows how the FormRenderService is initialized. It takes required renderers and a dispatcher, and internally creates a map from the renderers for quick access. ```dart FormRenderService({ required this.renderers, required this.dispatcher, }) : _renderersMap = Map.fromIterable(renderers, key: ((p) => p.formElementType), value: ((p) => p)); ``` -------------------------------- ### FormProvider Build Method Implementation Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProvider/build.html This snippet shows the implementation of the build method for the FormProvider. It delegates the actual building process to the `buildWithChild` method, passing the current context and an internal child widget. ```dart @override Widget build(BuildContext context) => buildWithChild(context, _child); ``` -------------------------------- ### FormProvider Constructor Implementation Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProvider/FormProvider.html This snippet shows the implementation of the FormProvider constructor, which initializes the FormManager and its associated properties. ```dart FormProvider({ Key? key, required CreateFormManager create, Widget? child, bool? lazy, }) : this._( key: key, create: create, dispose: (_, manager) => manager.close(), child: child, lazy: lazy, ); ``` -------------------------------- ### FormRenderService Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormRenderService/FormRenderService.html Initializes a new instance of the FormRenderService class. It requires a list of form element renderers and a form element event dispatcher function. ```APIDOC ## FormRenderService() ### Description Initializes a new instance of the FormRenderService class. ### Parameters #### Constructor Parameters - **renderers** (List>) - Required - A list of renderers for different form element types. - **dispatcher** (FormElementEventDispatcherFunction) - Required - A function to dispatch form element events. ``` -------------------------------- ### FormProvider Build Method Implementation Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/ParsedFormProvider/build.html This snippet shows the implementation of the `build` method for a widget that uses `FormProvider`. It initializes the `FormProvider` with a `create` function that instantiates and initializes a parsed form provider, then passes the `child` and `lazy` properties to the `FormProvider`. ```dart @override Widget build(BuildContext context) { return FormProvider( create: (context) { T parsedFormProvider = this.create(context); parsedFormProvider.init( content: content, parsers: parsers, expressionFactories: expressionFactories, ); return parsedFormProvider; }, child: child, lazy: lazy, ); } ``` -------------------------------- ### build Method Signature Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProvider/build.html The build method is called by the framework to render the widget's UI. It should not contain side effects and typically returns a new widget tree. ```APIDOC ## build Method ### Description Describes the part of the user interface represented by this widget. The framework calls this method when this widget is inserted into the tree in a given BuildContext and when the dependencies of this widget change. This method can potentially be called in every frame and should not have any side effects beyond building a widget. ### Method Signature ```dart @override Widget build(BuildContext context) ``` ### Implementation ```dart @override Widget build(BuildContext context) => buildWithChild(context, _child); ``` ### Notes - The implementation of this method must only depend on the fields of the widget and any ambient state obtained from the `context`. - If a widget's build method is to depend on anything else, use a `StatefulWidget` instead. ``` -------------------------------- ### FormProvider Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProvider-class.html Creates a FormProvider widget. It takes a `create` function to build the FormManager, an optional `child` widget, and a `lazy` flag to control when the FormManager is created. ```APIDOC FormProvider({Key? key, required CreateFormManager create, Widget? child, bool? lazy}) ``` -------------------------------- ### Implement buildWithChild Method Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProvider/buildWithChild.html This method receives a BuildContext and an optional Widget child. It returns an InheritedProvider, passing the provided child to it. This is useful when the provider needs to wrap a specific child widget. ```dart @override Widget buildWithChild(BuildContext context, Widget? child) { return InheritedProvider( create: _create, dispose: _dispose, child: child, lazy: lazy, ); } ``` -------------------------------- ### render Method Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormRenderService-class.html Renders a given form element into a Flutter Widget. ```APIDOC ## render ### Description Renders a given form element into a Flutter Widget. ### Parameters - **formElement** (TFormElement) - Required - The form element to render. - **context** (BuildContext) - Required - The build context for rendering the widget. ``` -------------------------------- ### FormRenderer Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormRenderer/FormRenderer.html Initializes a new instance of the FormRenderer class. It requires a list of renderers and accepts an optional event dispatcher and form manager. ```APIDOC ## FormRenderer ### Description Constructs a FormRenderer with a list of renderers, an optional event dispatcher, and an optional form manager. ### Parameters #### Constructor Parameters - **key** (Key?) - Optional - The key for the widget. - **renderers** (List>) - Required - A list of FormElementRenderer instances to use for rendering form elements. - **dispatcher** (FormElementEventDispatcherFunction?) - Optional - A function to dispatch form element events. - **formManager** (TFormManager?) - Optional - An instance of a FormManager to manage the form's state and logic. ``` -------------------------------- ### FormElementEvent Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormElementEvent/FormElementEvent.html Initializes a new instance of the FormElementEvent class. This is the primary way to create a FormElementEvent object. ```APIDOC ## FormElementEvent() ### Description Constructs a new FormElementEvent. ### Method `FormElementEvent()` ### Parameters None ### Request Example ```dart final event = FormElementEvent(); ``` ### Response Returns a new instance of FormElementEvent. ``` -------------------------------- ### FormElementEvent Methods Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormElementEvent-class.html Details the methods available for FormElementEvent instances. ```APIDOC ## Methods ### noSuchMethod - **Parameters**: `Invocation invocation` - **Returns**: `dynamic` - **Description**: Invoked when a nonexistent method or property is accessed. - **Inherited**: Yes ### toString - **Returns**: `String` - **Description**: A string representation of this object. - **Inherited**: Yes ``` -------------------------------- ### ChangeMultipleValuesEvent Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/ChangeMultipleValuesEvent-class.html Initializes a new instance of the ChangeMultipleValuesEvent class with a list of ChangeValueEvent objects. ```APIDOC ## ChangeMultipleValuesEvent(List changeValueEvents) ### Description Creates a new ChangeMultipleValuesEvent. ### Parameters #### Positional Parameters - **changeValueEvents** (List) - Required - A list of ChangeValueEvent objects representing the individual value changes. ``` -------------------------------- ### render Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormElementRenderer/render.html Abstract method signature for rendering a form element. Concrete implementations will define the actual rendering logic. ```APIDOC ## render abstract method ### Description This is an abstract method that defines the signature for rendering a `TFormElement`. Concrete subclasses of `FormElementRenderer` must implement this method to provide the specific UI for a given form element. ### Method Signature ```dart Widget render( TFormElement element, BuildContext context, FormElementEventDispatcherFunction dispatcher, FormElementRendererFunction renderer, ); ``` ### Parameters - **element** (TFormElement) - The form element to be rendered. - **context** (BuildContext) - The build context for the widget. - **dispatcher** (FormElementEventDispatcherFunction) - A function to dispatch events related to the form element. - **renderer** (FormElementRendererFunction) - A function that can be used to render other form elements recursively. ``` -------------------------------- ### ParsedFormProvider Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/ParsedFormProvider-class.html Initializes a new instance of the ParsedFormProvider class. It requires content, parsers, and a create function for the form manager. Optional parameters include a key, child widget, expression factories, and a lazy flag. ```APIDOC ## ParsedFormProvider Constructor ### Description Initializes a new instance of the ParsedFormProvider class. ### Parameters - **key** (Key?): Controls how one widget replaces another widget in the tree. - **content** (String): The content string to be parsed for the form. - **parsers** (List>): A list of parsers for different form elements. - **create** (CreateFormManager): A function to create the form manager instance. - **child** (Widget?): An optional child widget to be displayed. - **expressionFactories** (List): A list of factories for function expressions. Defaults to an empty list. - **lazy** (bool?): A flag to enable lazy initialization. ``` -------------------------------- ### buildWithChild Method Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProvider/buildWithChild.html Overrides the base build method to accept an additional child widget. This method is called by the framework and may receive different child widgets over its lifecycle without recreating the provider itself. ```APIDOC ## buildWithChild Method ### Description Overrides the base build method to accept an additional child widget. This method is called by the framework and may receive different child widgets over its lifecycle without recreating the provider itself. ### Signature ```dart Widget buildWithChild(BuildContext context, Widget? child) ``` ### Parameters #### Parameters - **context** (BuildContext) - The build context for the widget. - **child** (Widget?) - An optional child widget to be included in the build process. ### Implementation ```dart @override Widget buildWithChild(BuildContext context, Widget? child) { return InheritedProvider( create: _create, dispose: _dispose, child: child, lazy: lazy, ); } ``` ``` -------------------------------- ### render Method Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormElementRenderer-class.html Abstract method that must be implemented by subclasses to render a specific form element. ```APIDOC ## render(TFormElement element, BuildContext context, FormElementEventDispatcherFunction dispatcher, FormElementRendererFunction renderer) ### Description This method is responsible for rendering a given `FormElement` into a Flutter `Widget`. Subclasses must implement this method to define how specific form element types are displayed. ### Parameters - **element** (TFormElement) - Required - The form element to render. - **context** (BuildContext) - Required - The build context for the widget. - **dispatcher** (FormElementEventDispatcherFunction) - Required - A function to dispatch events related to the form element. - **renderer** (FormElementRendererFunction) - Required - A function that can be used to recursively render child form elements. ``` -------------------------------- ### Creating a FormProvider with an existing FormManager Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProvider-class.html Use this constructor when you already have an instance of a FormManager that you want to provide. The FormProvider will NOT automatically close the provided FormManager, so it's best used for providing existing managers to new routes. ```dart FormProvider.value(value: existingFormManager, child: ChildB()); ``` -------------------------------- ### ParsedFormProvider Constructor Implementation Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/ParsedFormProvider/ParsedFormProvider.html This is the implementation of the ParsedFormProvider constructor. It initializes the form provider with content, parsers, a create function for the form manager, an optional child widget, expression factories, and a lazy flag. ```dart const ParsedFormProvider({ Key? key, required this.content, required this.parsers, required this.create, this.child, this.expressionFactories = const [], this.lazy, }) : super(key: key); ``` -------------------------------- ### FormProvider.value Constructor Implementation Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProvider/FormProvider.value.html The internal implementation of the FormProvider.value constructor, which initializes the FormProvider with a provided value. ```dart FormProvider.value({ Key? key, required T value, Widget? child, }) : this._( key: key, create: (_) => value, child: child, ); ``` -------------------------------- ### FormRenderer Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormRenderer/FormRenderer.html Initializes the FormRenderer with a list of renderers, an optional event dispatcher, and an optional form manager. The key is passed to the superclass constructor. ```dart const FormRenderer({ Key? key, required this.renderers, this.dispatcher, this.formManager, }) : super(key: key); ``` -------------------------------- ### LazyStreamBuilder Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/LazyStreamBuilder-class.html Initializes a new instance of the LazyStreamBuilder class. It requires a streamFactory to create the stream and a builder function to render the stream's data. Optional initialData can be provided. ```APIDOC ## LazyStreamBuilder Constructor ### Description Initializes a new instance of the LazyStreamBuilder class. ### Parameters - **key** (Key?) - Optional - Controls how one widget replaces another widget in the tree. - **streamFactory** (StreamFactory) - Required - A factory function that creates the stream. - **builder** (AsyncWidgetBuilder) - Required - A function that builds the widget based on the stream's state. - **initialData** (T?) - Optional - The initial data to display before the stream emits any data. ``` -------------------------------- ### Creating a FormProvider with a new FormManager Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProvider-class.html Use this constructor to create a new instance of a FormManager. The FormProvider will automatically handle closing the FormManager when it's no longer needed. Set `lazy` to `false` if you need the FormManager to be created immediately. ```dart FormProvider( create: (BuildContext context) => FormManagerA(), child: ChildA(), ); ``` -------------------------------- ### FormProvider.of(BuildContext context) Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProvider-class.html A static method that allows widgets to access a FormManager instance from the nearest FormProvider in the widget tree. It requires a BuildContext. ```APIDOC static T of(BuildContext context) ``` -------------------------------- ### createElement Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProvider/createElement.html Creates a StatelessElement to manage this widget's location in the tree. It is uncommon for subclasses to override this method. ```APIDOC ## createElement ### Description Creates a StatelessElement to manage this widget's location in the tree. It is uncommon for subclasses to override this method. ### Method Signature `SingleChildStatelessElement createElement()` ### Implementation ```dart @override SingleChildStatelessElement createElement() { return SingleChildStatelessElement(this); } ``` ``` -------------------------------- ### LazyStreamBuilder Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/LazyStreamBuilder/LazyStreamBuilder.html Constructs a LazyStreamBuilder widget. It requires a stream factory and a builder function, and optionally accepts initial data. ```APIDOC ## LazyStreamBuilder ### Description Constructs a LazyStreamBuilder widget. It requires a stream factory and a builder function, and optionally accepts initial data. ### Parameters #### Constructor Parameters - **key** (Key?) - Optional - The widget's key. - **streamFactory** (required StreamFactory) - Required - A function that returns the stream to listen to. - **builder** (required AsyncWidgetBuilder) - Required - A function that builds the widget based on the stream's snapshot. - **initialData** (T?) - Optional - The initial data to display before the stream emits any data. ``` -------------------------------- ### MissingRendererException Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/MissingRendererException/MissingRendererException.html Initializes a MissingRendererException with the form element, renderer type, and an optional stack trace. ```dart MissingRendererException(this.formElement, this.rendererType, [this.stackTrace]); ``` -------------------------------- ### FormRenderer createState Implementation Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormRenderer/createState.html This is the specific implementation of the createState method for the FormRenderer widget. It returns a new instance of _FormRendererState. ```dart @override _FormRendererState createState() => _FormRendererState(); ``` -------------------------------- ### FormProvider.value Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProvider/FormProvider.value.html The `value` constructor is used to provide an existing `FormManager` instance to the widget tree. It's recommended for providing pre-existing managers to new routes, and the manager will not be automatically closed when using this constructor. ```APIDOC ## FormProvider.value Constructor ### Description Initializes a `FormProvider` with a pre-existing `FormManager` instance. This is useful for passing an existing manager to a new route or widget subtree without creating a new one. The provided `FormManager` will not be automatically disposed by this provider. ### Parameters - **key** (Key?) - Optional - An object that identifies this widget with the same globally unique key. - **value** (T extends FormManager) - Required - The existing `FormManager` instance to be provided. - **child** (Widget?) - Optional - The widget below this widget in the tree. The `formManager` will be available to this child and its descendants via `FormProvider.of(context)`. ``` -------------------------------- ### toString Method Implementation Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/MissingRendererException/toString.html Overrides the default toString method to provide a detailed error message when a renderer is not found. Includes information about the missing renderer type, the form element, and the stack trace. ```dart @override String toString() { return 'No renderer found.\n' 'Provided renderer type: $rendererType\n' 'Provided element: $formElement\n' '${stackTrace ?? ''}'; } ``` -------------------------------- ### FormRenderer Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormRenderer-class.html Constructs a FormRenderer widget. It requires a list of FormElementRenderer objects and can optionally take an event dispatcher and a form manager. ```APIDOC ## FormRenderer Constructor ### Description Initializes a new instance of the FormRenderer class. ### Parameters - **key** (Key?): An optional key for the widget. - **renderers** (List>): A required list of renderers for form elements. - **dispatcher** (FormElementEventDispatcherFunction?): An optional function to dispatch form element events. - **formManager** (TFormManager?): An optional form manager instance. ``` -------------------------------- ### Implement createElement Method Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProvider/createElement.html This method overrides the default implementation to return a SingleChildStatelessElement, managing the widget's lifecycle within the tree. Subclasses should typically avoid overriding this. ```dart @override SingleChildStatelessElement createElement() { return SingleChildStatelessElement(this); } ``` -------------------------------- ### FormElementEvent Properties Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormElementEvent-class.html Lists the properties available for FormElementEvent instances. ```APIDOC ## Properties ### hashCode - **Type**: `int` - **Description**: The hash code for this object. - **Setter**: No setter available (inherited). ### runtimeType - **Type**: `Type` - **Description**: A representation of the runtime type of the object. - **Setter**: No setter available (inherited). ``` -------------------------------- ### ParsedFormProvider Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/ParsedFormProvider/ParsedFormProvider.html The constructor for ParsedFormProvider allows for the initialization of a form with content, parsers, and a form manager creation function. ```APIDOC ## ParsedFormProvider ### Description Initializes a new instance of the ParsedFormProvider. ### Parameters * **key** (Key?): An optional key for widget identification. * **content** (String): The content of the form, typically in a JSON or string format. * **parsers** (List>): A list of parsers to interpret form elements. * **create** (CreateFormManager): A factory function to create the specific type of FormManager. * **child** (Widget?): An optional child widget to be displayed within the form. * **expressionFactories** (List): A list of factories for custom function expressions. Defaults to an empty list. * **lazy** (bool?): An optional boolean to enable lazy initialization of the form manager. ``` -------------------------------- ### FormProvider.of Implementation Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProvider/of.html This is the internal implementation of the `of` method. It attempts to retrieve the `FormManager` using `Provider.of` and throws a descriptive `FlutterError` if the manager is not found in the provided context. ```dart static T of(BuildContext context) { try { return Provider.of(context, listen: false); } on ProviderNotFoundException catch (e) { if (e.valueType != T) rethrow; throw FlutterError( ''' FormProvider.of() called with a context that does not contain a FormManager of type $T. No ancestor could be found starting from the context that was passed to FormProvider.of<$T>(). This can happen if the context you used comes from a widget above the FormProvider. The context used was: $context ''', ); } } ``` -------------------------------- ### toString() Method Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/MissingRendererException/toString.html The toString() method overrides the default Object.toString() to provide a more informative string representation of the exception. It includes the renderer type, the form element, and the stack trace if available. ```APIDOC ## toString() ### Description Returns a string representation of this object. The string representation is often used for debugging and logging purposes. ### Method Signature ```dart @override String toString() ``` ### Implementation Details This method constructs a string that includes: - A message indicating that no renderer was found. - The type of the renderer that was provided. - The form element for which the renderer was not found. - The stack trace, if available. ### Example Output ``` No renderer found. Provided renderer type: Instance of \'MyRendererType\' Provided element: Instance of \'MyFormElement\' #0 MissingRendererException.toString (package:flutter_dynamic_forms/src/exceptions/missing_renderer_exception.dart:18:7) #1 ... (rest of stack trace) ``` ``` -------------------------------- ### Using FormProvider.value Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProvider/FormProvider.value.html Instantiate FormProvider.value with an existing FormManager and a child widget. The FormManager will not be automatically closed. ```dart FormProvider.value( value: Formrovider.of(context), child: ScreenA(), ); ``` -------------------------------- ### form() Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProviderExtension.html Performs a lookup using the BuildContext to obtain the nearest ancestor FormManager of type C. ```APIDOC ## form() ### Description Performs a lookup using the `BuildContext` to obtain the nearest ancestor `FormManager` of type `C`. ### Method Signature `form() → C` ### Parameters This method does not take any explicit parameters. The type `C` is a generic type parameter representing the specific `FormManager` type to look up. ### Returns An instance of the nearest ancestor `FormManager` of type `C`. ``` -------------------------------- ### FormElementRenderer Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormElementRenderer/FormElementRenderer.html Initializes a new instance of the FormElementRenderer class. This constructor is used to create renderers for specific form element types. ```APIDOC ## FormElementRenderer.new constructor ### Description Creates a new instance of `FormElementRenderer`. ### Signature ```dart FormElementRenderer() ``` ### Type Parameters * `TFormElement`: The type of `FormElement` that this renderer will handle. It must extend the `FormElement` class. ``` -------------------------------- ### render Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormRenderService/render.html Renders a FormElement into a Widget. It looks up a renderer based on the element's runtime type and uses it to perform the rendering. Throws a MissingRendererException if no renderer is found for the given element type. ```APIDOC ## render ### Description Renders a `FormElement` into a `Widget`. This method is generic and accepts any type `TFormElement` that extends `FormElement`. It finds an appropriate renderer from an internal map based on the `formElement`'s runtime type. If no renderer is found, it throws a `MissingRendererException`. ### Method Signature ```dart Widget render(TFormElement formElement, BuildContext context) ``` ### Parameters #### Path Parameters * **formElement** (`TFormElement`) - Required - The `FormElement` to be rendered. * **context** (`BuildContext`) - Required - The `BuildContext` for the widget tree. ### Implementation Details The method retrieves a renderer from `_renderersMap` using `formElement.runtimeType`. If a renderer exists, it calls the renderer's `render` method, passing the `formElement`, `context`, `dispatcher`, and `render` itself. ### Exceptions * **MissingRendererException**: Thrown if no renderer is registered for the `formElement.runtimeType`. ``` -------------------------------- ### Abstract Render Method Signature Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormElementRenderer/render.html Defines the signature for the abstract render method. Implementations must provide the logic to render a TFormElement. ```dart Widget render( TFormElement element, BuildContext context, FormElementEventDispatcherFunction dispatcher, FormElementRendererFunction renderer); ``` -------------------------------- ### builder property Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/LazyStreamBuilder/builder.html The builder property takes an AsyncWidgetBuilder function, which receives a BuildContext and an AsyncSnapshot. This function is responsible for returning the widget that will be displayed based on the current state of the stream. ```APIDOC ## builder property ### Description An `AsyncWidgetBuilder` that is called whenever the stream emits a new value or its state changes. This builder is responsible for constructing the UI based on the `AsyncSnapshot`. ### Type `AsyncWidgetBuilder` ### Implementation ```dart final AsyncWidgetBuilder builder; ``` ### Usage Example ```dart LazyStreamBuilder( stream: myStream, builder: (BuildContext context, AsyncSnapshot snapshot) { if (snapshot.hasError) { return Text('Error: ${snapshot.error}'); } else if (snapshot.hasData) { return Text('Data: ${snapshot.data}'); } else { return CircularProgressIndicator(); } }, ) ``` ``` -------------------------------- ### Implement render Method Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormRenderService/render.html This method finds the appropriate renderer for a given form element and uses it to render the element. Ensure a renderer is registered for each form element type to avoid exceptions. ```dart Widget render( TFormElement formElement, BuildContext context) { var renderer = _renderersMap[formElement.runtimeType]; if (renderer == null) { throw MissingRendererException( formElement, TFormElement.toString(), ); } return renderer.render(formElement, context, dispatcher, render); } ``` -------------------------------- ### FormProvider.value Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProvider-class.html Creates a FormProvider widget with an existing FormManager instance. The provided `value` will not be automatically closed. This is useful for providing existing FormManagers to new routes. ```APIDOC FormProvider.value({Key? key, required T value, Widget? child}) ``` -------------------------------- ### ChangeMultipleValuesEvent Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/ChangeMultipleValuesEvent/ChangeMultipleValuesEvent.html The ChangeMultipleValuesEvent constructor takes a list of ChangeValueEvent objects to represent multiple value changes. ```APIDOC ## ChangeMultipleValuesEvent(List changeValueEvents) ### Description Initializes a new instance of the ChangeMultipleValuesEvent class with a list of individual value change events. ### Parameters #### Positional Parameters - **changeValueEvents** (List) - Required - A list of ChangeValueEvent objects, where each object represents a single value change. ### Request Example ```dart final events = [ ChangeValueEvent(path: 'field1', value: 'new_value1'), ChangeValueEvent(path: 'field2', value: 123) ]; final multipleEvents = ChangeMultipleValuesEvent(events); ``` ### Response #### Success Response - **ChangeMultipleValuesEvent** - An instance of ChangeMultipleValuesEvent containing the provided list of change events. ``` -------------------------------- ### FormElementEvent Constructors Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormElementEvent-class.html Provides the default constructor for the FormElementEvent class. ```APIDOC ## Constructors ### FormElementEvent() Creates a new FormElementEvent instance. ``` -------------------------------- ### FormElementRenderer Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormElementRenderer-class.html The default constructor for the FormElementRenderer class. ```APIDOC ## FormElementRenderer() ### Description Initializes a new instance of the `FormElementRenderer` class. ### Parameters None ``` -------------------------------- ### MissingRendererException Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/MissingRendererException-class.html Constructs a MissingRendererException. This exception is thrown when the dynamic forms library cannot find a suitable renderer for a given form element. ```APIDOC ## Constructors MissingRendererException(FormElement formElement, String rendererType, [StackTrace? stackTrace]) ### Description Creates an instance of MissingRendererException. ### Parameters - **formElement** (FormElement) - The form element for which a renderer could not be found. - **rendererType** (String) - The type of the renderer that was expected but not found. - **stackTrace** (StackTrace?) - An optional stack trace associated with the exception. ``` -------------------------------- ### MissingRendererException Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/MissingRendererException/MissingRendererException.html The MissingRendererException is thrown when the dynamic forms library cannot find a suitable renderer for a given form element. It takes the form element, the type of renderer that was expected, and an optional stack trace as arguments. ```APIDOC ## MissingRendererException Constructor ### Description Instantiates a MissingRendererException. ### Parameters #### Path Parameters - **formElement** (FormElement) - Required - The form element for which a renderer could not be found. - **rendererType** (String) - Required - The type of the renderer that was expected. - **stackTrace** (StackTrace?) - Optional - The stack trace associated with the exception. ### Implementation ```dart MissingRendererException(this.formElement, this.rendererType, [this.stackTrace]); ``` ``` -------------------------------- ### Declare CreateFormManager Property Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/ParsedFormProvider/create.html This snippet shows the declaration of the `create` property, which is an instance of `CreateFormManager`. This is a fundamental part of managing form creation within the library. ```dart final CreateFormManager create; ``` -------------------------------- ### Accessing FormManager with form() Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProviderExtension/form.html Use this method to retrieve the nearest FormManager of type C from the BuildContext. This is a shorthand for FormProvider.of(context). ```dart C form() => FormProvider.of(this); ``` -------------------------------- ### createState Method Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormRenderer/createState.html This method is called by the framework to create the mutable state object for the FormRenderer widget. Subclasses should override this to return their specific State subclass. The framework may call this multiple times. ```APIDOC ## createState Method ### Description Creates the mutable state for this widget at a given location in the tree. Subclasses should override this method to return a newly created instance of their associated State subclass. The framework can call this method multiple times over the lifetime of a StatefulWidget. For example, if the widget is inserted into the tree in multiple locations, the framework will create a separate State object for each location. Similarly, if the widget is removed from the tree and later inserted into the tree again, the framework will call createState again to create a fresh State object, simplifying the lifecycle of State objects. ### Implementation ```dart @override _FormRendererState createState() => _FormRendererState(); ``` ``` -------------------------------- ### FormProvider.of Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProvider/of.html Retrieves a `FormManager` instance of type `T` from the nearest `FormProvider` ancestor in the widget tree. It requires a `BuildContext` and optionally accepts a type parameter `T` to specify the desired `FormManager` type. ```APIDOC ## of ### Description Method that allows widgets to access a `formManager` instance as long as their `BuildContext` contains a FormProvider instance. ### Method Signature `static T of(BuildContext context)` ### Parameters #### Path Parameters - **context** (BuildContext) - Required - The build context to search for the `FormProvider`. ### Usage Example ```dart // Accessing a specific FormManager type final formManagerA = FormProvider.of(context); ``` ### Throws - `FlutterError` if no `FormProvider` ancestor is found for the given type `T`. ``` -------------------------------- ### LazyStreamBuilder Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/LazyStreamBuilder/LazyStreamBuilder.html Defines the constructor for LazyStreamBuilder, accepting a key, a stream factory, a builder function, and optional initial data. ```dart const LazyStreamBuilder( {Key? key, required this.streamFactory, required this.builder, this.initialData}) : super(key: key); ``` -------------------------------- ### Declare Content Property Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/ParsedFormProvider/content.html This snippet shows the declaration of the final String 'content' property. ```dart final String content; ``` -------------------------------- ### MissingRendererException Properties Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/MissingRendererException-class.html Properties available on the MissingRendererException class. ```APIDOC ## Properties - **formElement** → FormElement The form element for which a renderer could not be found. - **rendererType** → String The type of the renderer that was expected but not found. - **stackTrace** → StackTrace? An optional stack trace associated with the exception. ``` -------------------------------- ### FormElementEvent Operators Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormElementEvent-class.html Describes the operators available for FormElementEvent instances. ```APIDOC ## Operators ### operator == - **Parameters**: `Object other` - **Returns**: `bool` - **Description**: The equality operator. - **Inherited**: Yes ``` -------------------------------- ### FormElementRendererFunction Typedef Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormElementRendererFunction.html This typedef represents a function that takes a generic FormElement and a BuildContext, and returns a Widget. It's used to define how different form elements should be rendered. ```APIDOC ## FormElementRendererFunction typedef ### Description Defines the signature for a function that renders a Widget based on a specific type of FormElement and the current BuildContext. ### Signature ```dart Widget Function(TFormElement formElement, BuildContext context) ``` ### Type Parameters * **TFormElement**: A generic type that extends `FormElement`, specifying the type of form element this renderer can handle. ``` -------------------------------- ### LazyStreamBuilder createState Implementation Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/LazyStreamBuilder/createState.html This is the specific implementation of the createState method for the LazyStreamBuilder widget, returning its associated State object. ```dart @override _LazyStreamBuilderState createState() => _LazyStreamBuilderState(); ``` -------------------------------- ### FormElementEventDispatcherFunction Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormElementEventDispatcherFunction.html This typedef defines the signature for functions that dispatch form element events. It takes a single argument, a FormElementEvent. ```APIDOC ## FormElementEventDispatcherFunction ### Description A function type that accepts a `FormElementEvent` and returns `void`. This is used for event dispatching within the form elements. ### Signature ```dart void Function(FormElementEvent event) ``` ### Parameters - **event** (`FormElementEvent`) - The event object associated with the form element interaction. ``` -------------------------------- ### ChangeValueEvent Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/ChangeValueEvent-class.html Constructs a ChangeValueEvent with the new value, element ID, an optional property name, and an option to ignore the last change. ```APIDOC ## ChangeValueEvent Constructor ### Description Creates a new `ChangeValueEvent`. ### Parameters - **value** (T) - Required - The new value of the form element. - **elementId** (String) - Required - The unique identifier of the form element. - **propertyName** (String?) - Optional - The name of the property that changed, if applicable. - **ignoreLastChange** (bool) - Optional - Defaults to `false`. If true, this change might be ignored by certain listeners. ``` -------------------------------- ### ChangeMultipleValuesEvent Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/ChangeMultipleValuesEvent/ChangeMultipleValuesEvent.html Initializes a ChangeMultipleValuesEvent with a list of ChangeValueEvents. This constructor is used to bundle multiple form field value changes into a single event. ```dart ChangeMultipleValuesEvent( this.changeValueEvents ); ``` -------------------------------- ### FormRenderer createState() Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormRenderer-class.html Overrides the createState method to create the mutable state for the FormRenderer widget. ```APIDOC ## createState() ### Description Creates the mutable state for this widget at a given location in the tree. ### Returns - **_FormRendererState** A new instance of the state object. ``` -------------------------------- ### FormRenderer Properties Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormRenderer-class.html Exposes properties of the FormRenderer class, including renderers, dispatcher, and form manager. ```APIDOC ## FormRenderer Properties ### Description Provides access to the configuration and state of the FormRenderer. ### Properties - **renderers** (List>): The list of renderers used to display form elements. - **dispatcher** (FormElementEventDispatcherFunction?): The function used for dispatching events related to form elements. - **formManager** (TFormManager?): The form manager associated with this renderer. ``` -------------------------------- ### Accessing FormManager with FormProvider.of Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProvider-class.html This static method allows any descendant widget to access the FormManager instance provided by the nearest FormProvider in the widget tree. Ensure the `BuildContext` contains a FormProvider. ```dart T formManager = FormProvider.of(context); ``` -------------------------------- ### ChangeValueEvent Constructor Implementation Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/ChangeValueEvent/ChangeValueEvent.html This is the implementation of the ChangeValueEvent constructor. It requires a value, elementId, and optionally accepts a propertyName and ignoreLastChange flag. ```dart ChangeValueEvent({ required this.value, required this.elementId, this.propertyName, this.ignoreLastChange = false, }); ``` -------------------------------- ### form() Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormProviderExtension/form.html Performs a lookup using the BuildContext to obtain the nearest ancestor FormManager of type C. This is a convenient way to access form state within your Flutter widgets. ```APIDOC ## form() ### Description Performs a lookup using the `BuildContext` to obtain the nearest ancestor `FormManager` of type `C`. ### Method Signature ```dart C form() ``` ### Usage Calling this method is equivalent to calling: ```dart FormProvider.of(context) ``` ### Implementation Example ```dart C form() => FormProvider.of(this); ``` ``` -------------------------------- ### ChangeMultipleValuesEvent Properties Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/ChangeMultipleValuesEvent-class.html Properties available for the ChangeMultipleValuesEvent class. ```APIDOC ## Properties ### changeValueEvents - **Type**: `List` - **Description**: The list of individual value change events captured by this event. - **Final**: true ``` -------------------------------- ### StackTrace Property Declaration Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/MissingRendererException/stackTrace.html This snippet shows the declaration of the nullable StackTrace property. ```dart final StackTrace? stackTrace; ``` -------------------------------- ### CreateFormManager Typedef Definition Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/CreateFormManager.html This typedef defines the signature for a function that creates a form manager. It takes a BuildContext and returns an instance of a generic type T, which must extend FormManager. Use this when you need to specify how a form manager should be instantiated. ```dart typedef CreateFormManager = T Function( BuildContext context, ); ``` -------------------------------- ### StreamFactory Property Declaration Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/LazyStreamBuilder/streamFactory.html This shows the declaration of the final StreamFactory property. ```dart final StreamFactory streamFactory; ``` -------------------------------- ### ChangeValueEvent Constructor Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/ChangeValueEvent/ChangeValueEvent.html Initializes a new instance of the ChangeValueEvent class. This event is triggered when a form element's value is modified. ```APIDOC ## ChangeValueEvent constructor ChangeValueEvent({ 1. required T value, 2. required String elementId, 3. String? propertyName, 4. bool ignoreLastChange = false, }) ### Parameters #### Required Parameters - **value** (T) - The new value of the form element. - **elementId** (String) - The unique identifier of the form element that triggered the event. #### Optional Parameters - **propertyName** (String?) - The name of the property that changed, if applicable. - **ignoreLastChange** (bool) - A flag to indicate whether the last change should be ignored. Defaults to false. ``` -------------------------------- ### createState Method Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/LazyStreamBuilder/createState.html This method is called by the framework to create the mutable state object for the LazyStreamBuilder widget. It should return a new instance of the associated State subclass. ```APIDOC ## createState Method ### Description Creates the mutable state for this widget at a given location in the tree. Subclasses should override this method to return a newly created instance of their associated State subclass. ### Method Signature ```dart @override _LazyStreamBuilderState createState() ``` ### Implementation Example ```dart @override _LazyStreamBuilderState createState() => _LazyStreamBuilderState(); ``` ### Notes - The framework can call this method multiple times over the lifetime of a StatefulWidget. - Each call creates a separate State object for each location in the tree or when the widget is reinserted. ``` -------------------------------- ### ChangeValueEvent Properties Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/ChangeValueEvent-class.html Properties available on the ChangeValueEvent class. ```APIDOC ## ChangeValueEvent Properties ### elementId - **Type**: `String` - **Description**: The unique identifier of the form element that triggered the event. ### ignoreLastChange - **Type**: `bool` - **Description**: Indicates whether this change should be ignored by listeners, defaulting to `false`. ### propertyName - **Type**: `String?` - **Description**: The name of the specific property that changed within the form element, if applicable. ### value - **Type**: `T` - **Description**: The new value of the form element. ``` -------------------------------- ### Declare formManager Property Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormRenderer/formManager.html This snippet shows the declaration of the nullable 'formManager' property. ```dart final TFormManager? formManager; ``` -------------------------------- ### FormElementRenderer List Declaration Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormRenderService/renderers.html Declares a final list of FormElementRenderer objects. This is the standard way to define the renderers available for dynamic forms. ```dart final List renderers; ``` -------------------------------- ### Declare expressionFactories Property Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/ParsedFormProvider/expressionFactories.html This snippet shows the declaration of the expressionFactories property as a final list of FunctionExpressionFactory. ```dart final List expressionFactories; ``` -------------------------------- ### Declare propertyName Property Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/ChangeValueEvent/propertyName.html This snippet shows the declaration of the nullable String propertyName. It is marked as final, indicating it should be assigned a value once. ```dart final String? propertyName; ``` -------------------------------- ### stackTrace Property Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/MissingRendererException/stackTrace.html The stackTrace property is an optional StackTrace object that holds the stack trace information when a MissingRendererException is thrown. This can be useful for debugging. ```APIDOC ## stackTrace Property ### Description An optional `StackTrace` object that captures the call stack at the point where the exception occurred. This is useful for diagnosing the root cause of a `MissingRendererException`. ### Type `StackTrace?` ### Implementation ```dart final StackTrace? stackTrace; ``` ``` -------------------------------- ### Declare elementId Property Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/ChangeValueEvent/elementId.html This snippet shows the declaration of the final String elementId property. ```dart final String elementId; ``` -------------------------------- ### propertyName Property Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/ChangeValueEvent/propertyName.html The propertyName is a nullable String that can be used to identify or name a property within the dynamic form structure. It is declared as final, meaning its value can only be assigned once. ```APIDOC ## propertyName Property ### Description A nullable String that represents the name of a property. This property is final, meaning it can only be set once upon initialization. ### Type String? ### Implementation ```dart final String? propertyName; ``` ``` -------------------------------- ### FormElementRendererFunction Typedef Definition Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormElementRendererFunction.html This typedef defines the signature for functions that render form elements. It's used to associate a specific form element type with its corresponding widget rendering logic. ```dart typedef FormElementRendererFunction = Widget Function(TFormElement formElement, BuildContext context); ``` -------------------------------- ### LazyStreamBuilder Builder Property Implementation Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/LazyStreamBuilder/builder.html This snippet shows the declaration of the builder property, which is a final AsyncWidgetBuilder of type T. ```dart final AsyncWidgetBuilder builder; ``` -------------------------------- ### StreamFactory Typedef Definition Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/StreamFactory.html Defines a function type that produces a Stream of a specific type. Use this when you need to abstract the creation of streams. ```dart typedef StreamFactory = Stream Function(); ``` -------------------------------- ### LazyStreamBuilder initialData Declaration Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/LazyStreamBuilder/initialData.html This snippet shows the declaration of the nullable `initialData` property within the LazyStreamBuilder class. It is of generic type `T` and is marked as `final`. ```dart final T? initialData; ``` -------------------------------- ### formElementType Property Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/FormElementRenderer/formElementType.html Retrieves the type of the form element. This property is essential for determining how a form element should be rendered or processed. ```APIDOC ## Type get formElementType ### Description Retrieves the type of the form element. This property is essential for determining how a form element should be rendered or processed. ### Implementation ```dart Type get formElementType => TFormElement; ``` ``` -------------------------------- ### Declare rendererType Property Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/MissingRendererException/rendererType.html Declare the final String rendererType property. This is a common pattern for immutable properties in Dart. ```dart final String rendererType; ``` -------------------------------- ### rendererType Property Source: https://pub.dev/documentation/flutter_dynamic_forms/latest/flutter_dynamic_forms/MissingRendererException/rendererType.html The rendererType property is a final String that indicates the type of renderer that caused the MissingRendererException. ```APIDOC ## rendererType Property ### Description The `rendererType` property is a final String that holds the identifier of the renderer that was expected but could not be found. ### Type String ### Modifiers final ### Implementation ```dart final String rendererType; ``` ```