json_dynamic_widget library

Classes

ArgProcessor
Arg processor allows to process JsonWidgetData arg into its real value. It also is responsible to calculate (or not) variable names that specified JsonWidgetData depends on. It produces ProcessedArg which contains all that infomations.
ArgProcessors
List of predifinied ArgProcessors.
ArgsExpressionEvaluator
Modification added to ExpressionEvaluator which integrates JsonWidgetRegistry variables and functions.
CurvesValues
DeferredJsonWidgetData
A JsonWidgetData subclass that does not parse the JSON until the values are needed. This is used internally by the library for when widgets are requested through a variable reference because the variable often won't exist until after the first pass of the widget tree processing is completed.
DynamicValuesFactory
Creates values used to parameterize child templates. It generates 'id' field if not exist via Uuid.v4.
ExpressionArgProcessor
Processor that integrates https://pub.dev/packages/expressions library syntax with JsonWidgetRegistry variables and functions. All expressions should be placed in ${.*} syntax.
InputDecorationDecoder
InputError
IterableArgProcessor
Processor for iterable arg. The processor is processing every value of the arg using JsonWidgetRegistry processsors and it is aggregating all listen variable names. In case of passing listenVariables directly then the aggregation step is skipped.
JsonAlignBuilder
Builder that can build an Align widget. See the fromDynamic for the format.
JsonAnimatedAlignBuilder
Builder that can build an AnimatedAlign widget. See the fromDynamic for the format.
JsonAnimatedContainerBuilder
Builder that can build an AnimatedContainer widget. See the fromDynamic for the format.
JsonAnimatedCrossFadeBuilder
Builder that can build an AnimatedCrossFade widget. See the fromDynamic for the format. The ordering of the children in JSON determines which will be the first or second to be rendered.
JsonAnimatedDefaultTextStyleBuilder
Builder that can build an AnimatedDefaultTextStyle widget. See the fromDynamic for the format.
JsonAnimatedOpacityBuilder
Builder that can build an AnimatedOpacity widget. See the fromDynamic for the format.
JsonAnimatedPaddingBuilder
Builder that can build an AnimatedPadding widget. See the fromDynamic for the format.
JsonAnimatedPhysicalModelBuilder
Builder that can build an AnimatedPhysicalModel widget. See the fromDynamic for the format.
JsonAnimatedPositionedBuilder
Builder that can build an AnimatedPositioned widget. See the fromDynamic for the format.
JsonAnimatedPositionedDirectionalBuilder
Builder that can build an AnimatedPositionedDirectional widget. See the fromDynamic for the format.
JsonAnimatedSizeBuilder
Builder that can build an AnimatedSize widget. See the fromDynamic for the format.
JsonAnimatedSwitcherBuilder
Builder that can build an AnimatedSwitcher widget. See the fromDynamic for the format.
JsonAnimatedThemeBuilder
Builder that can build an AnimatedTheme widget. See the fromDynamic for the format.
JsonAppBarBuilder
Builder that can build an AppBar widget. See the fromDynamic for the format.
JsonAspectRatioBuilder
Builder that can build an AspectRatio widget. See the fromDynamic for the format.
JsonAssetImageBuilder
Builder that can build an Image widget using bundled assets. See the fromDynamic for the format.
JsonBaselineBuilder
Builder that can build an Baseline widget. See the fromDynamic for the format.
JsonButtonBarBuilder
Builder that can build an ButtonBar widget. See the fromDynamic for the format.
JsonCardBuilder
Builder that can build an Card widget. See the fromDynamic for the format.
JsonCenterBuilder
Builder that can build an Center widget. See the fromDynamic for the format.
JsonCheckboxBuilder
Builder that can build an Checkbox widget. See the fromDynamic for the format.
JsonCircularProgressIndicatorBuilder
Builder that can build an CircularProgressIndicator widget. See the fromDynamic for the format.
JsonClipOvalBuilder
Builder that can build an ClipOval widget. See the fromDynamic for the format.
JsonClipPathBuilder
Builder that can build an ClipPath widget. See the fromDynamic for the format.
JsonClipRectBuilder
Builder that can build an ClipRect widget. See the fromDynamic for the format.
JsonClipRRectBuilder
Builder that can build an ClipRRect widget. See the fromDynamic for the format.
JsonColumnBuilder
Builder that can build an Column widget. See the fromDynamic for the format.
JsonCommentBuilder
Builder is just a placeholder to allow for placing comments in the JSON tree for human readability
JsonConditionalBuilder
Builder that builds either the actual child widget or clears the child widgets based on the result from the conditional.
JsonContainerBuilder
Builder that can build an Container widget. See the fromDynamic for the format.
JsonCupertinoSwitchBuilder
Builder that can build an CupertinoSwitch widget. See the fromDynamic for the format.
JsonCustomScrollViewBuilder
Builder that can build an CustomScrollView widget. See the fromDynamic for the format.
JsonDecoratedBoxBuilder
Builder that can build an DecoratedBox widget. See the fromDynamic for the format.
JsonDirectionalityBuilder
Builder that can build a Directionality widget. See the fromDynamic for the format.
JsonDropdownButtonFormFieldBuilder
Builder that can build an DropdownButtonFormField widget. See the fromDynamic for the format.
JsonDynamicBuilder
Builder that builds children based on the state the listened value. Listened value name is equal to id field value. Children are created from childTemplate with usage of ${dynamic} function. childTemplate is able to use template values via {} format. For example to use an id value in a template just putting there {id} is enough. Templating mechanism uses Interpolation underneath.
JsonElevatedButtonBuilder
Builder that can build an ElevatedButton widget. See the fromDynamic for the format.
JsonExcludeSemanticsBuilder
Builder that can build an MergeSemantics widget. See the fromDynamic for the format.
JsonExpandedBuilder
Builder that can build an Expanded widget. See the fromDynamic for the format.
JsonFittedBoxBuilder
Builder that can build an FittedBox widget. See the fromDynamic for the format.
JsonFlatButtonBuilder
Builder that can build an FlatButton widget. See the fromDynamic for the format.
JsonFlexibleBuilder
Builder that can build an Flexible widget. See the fromDynamic for the format.
JsonFloatingActionButtonBuilder
Builder that can build a FloatingActionButton widget. See the fromDynamic for the format.
JsonFormBuilder
Builder that can build an Form widget. See the fromDynamic for the format.
JsonFractionallySizedBoxBuilder
Builder that can build a FractionallySizedBox widget. See the fromDynamic for the format.
JsonFractionalTranslationBuilder
Builder that can build a FractionalTranslation widget. See the fromDynamic for the format.
JsonGestureDetectorBuilder
Builder that can build an GestureDetector widget. See the fromDynamic for the format.
JsonGridViewBuilder
Builder that can build an GridView widget. See the fromDynamic for the format.
JsonHeroBuilder
Builder that can build an Hero widget. See the fromDynamic for the format.
JsonIconBuilder
Builder that can build an Icon widget. See the fromDynamic for the format.
JsonIconButtonBuilder
Builder that can build an IconButton widget. See the fromDynamic for the format.
JsonIgnorePointerBuilder
Builder that can build an IgnorePointer widget. See the fromDynamic for the format.
JsonIndexedStackBuilder
Builder that can build an IndexedStack widget. See the fromDynamic for the format.
JsonInkWellBuilder
Builder that can build an InkWell widget. See the fromDynamic for the format.
JsonInputErrorBuilder
Builder that can build an InputError widget. See the fromDynamic for the format.
JsonInteractiveViewerBuilder
Builder that can build an InteractiveViewer widget. See the fromDynamic for the format.
JsonIntrinsicHeightBuilder
Builder that can build an IntrinsicHeight widget. See the fromDynamic for the format.
JsonIntrinsicWidthBuilder
Builder that can build an IntrinsicWidth widget. See the fromDynamic for the format.
JsonLayoutBuilderBuilder
Builder that can build an LayoutBuilder widget. See the fromDynamic for the format.
JsonLimitedBoxBuilder
Builder that can build a LimitedBox widget. See the fromDynamic for the format.
JsonLinearProgressIndicatorBuilder
Builder that can build an LinearProgressIndicator widget. See the fromDynamic for the format.
JsonListTileBuilder
Builder that can build an ListTile widget. See the fromDynamic for the format.
JsonListViewBuilder
Builder that can build an ListView widget. See the fromDynamic for the format.
JsonMaterialBuilder
Builder that can build an Material widget. See the fromDynamic for the format.
JsonMeasuredBuilder
Builder that can build a widget that measures itself and writes the measurements to the JsonWidgetRegistry's values. See the fromDynamic for the format.
JsonMemoryImageBuilder
Builder that can build an Image widget from memory. See the fromDynamic for the format.
JsonMergeSemanticsBuilder
Builder that can build an MergeSemantics widget. See the fromDynamic for the format.
JsonNetworkImageBuilder
Builder that can build an Image widget from a network URL. See the fromDynamic for the format.
JsonOffstageBuilder
Builder that can build an Offstage widget. See the fromDynamic for the format.
JsonOpacityBuilder
Builder that can build an Opacity widget. See the fromDynamic for the format.
JsonOutlinedButtonBuilder
Builder that can build an OutlinedButton widget. See the fromDynamic for the format.
JsonOverflowBoxBuilder
Builder that can build an OverflowBox widget. See the fromDynamic for the format.
JsonPaddingBuilder
Builder that can build an Padding widget. See the fromDynamic for the format.
JsonPlaceholderBuilder
Builder that can build a Placeholder widget. See the fromDynamic for the format.
JsonPopupMenuButtonBuilder
Builder that can build a PopupMenuButton widget. See the fromDynamic for the format.
JsonPositionedBuilder
Builder that can build an Positioned widget. See the fromDynamic for the format.
JsonPrimaryScrollControllerBuilder
Builder that creates a scroll controller and then creates a PrimaryScrollController widget on the tree.
JsonRadioBuilder
Builder that can build an Radio See the fromDynamic for the format. Unlike other form fields, this requires the id for the radio variable to be inside of the args. This is because no two widgets can share the same overall id.
JsonRaisedButtonBuilder
Builder that can build an RaisedButton widget. See the fromDynamic for the format.
JsonRowBuilder
Builder that can build an Row widget. See the fromDynamic for the format.
JsonSafeAreaBuilder
Builder that can build an SafeArea widget. See the fromDynamic for the format.
JsonSaveContextBuilder
Builder that sets a the current BuildContext on the JsonWidgetRegistry. This doesn't actually have a widget and instead simply returns the child's built widget. See the fromDynamic for the format.
JsonScaffoldBuilder
Builder that can build an Scaffold widget. See the fromDynamic for the format.
JsonScrollbarBuilder
Builder that can build an Scrollbar widget. See the fromDynamic for the format.
JsonScrollConfigurationBuilder
Builder that can build an Scrollbar widget. See the fromDynamic for the format.
JsonSemanticsBuilder
Builder that can build an Semantics widget. See the fromDynamic for the format.
JsonSetDefaultValueBuilder
Builder that sets a value (or group of values) to the JsonWidgetRegistry. This doesn't actually have a widget and instead simply returns the child's built widget. See the fromDynamic for the format.
JsonSetScrollControllerBuilder
Builder that creates a scroll controller and then sets it as a variable using the "key" name.
JsonSetValueBuilder
Builder that sets a value (or group of values) to the JsonWidgetRegistry. This doesn't actually have a widget and instead simply returns the child's built widget. See the fromDynamic for the format.
JsonSetWidgetBuilder
Builder that sets a value (or group of values) to the JsonWidgetRegistry. This doesn't actually have a widget and instead simply returns the child's built widget. See the fromDynamic for the format.
JsonSingleChildScrollViewBuilder
Builder that can build an SingleChildScrollView widget. See the fromDynamic for the format.
JsonSizedBoxBuilder
Builder that can build an SizedBox widget. See the fromDynamic for the format.
JsonSliverGridBuilder
Builder that can build an SliverGrid widget. See the fromDynamic for the format.
JsonSliverListBuilder
Builder that can build an SliverList widget. See the fromDynamic for the format.
JsonSliverPaddingBuilder
Builder that can build an SliverPadding widget. See the fromDynamic for the format.
JsonSliverToBoxAdapterBuilder
Builder that can build an SliverToBoxAdapter widget. See the fromDynamic for the format.
JsonStackBuilder
Builder that can build an Stack widget. See the fromDynamic for the format.
JsonSwitchBuilder
Builder that can build an Switch widget. See the fromDynamic for the format.
JsonTestableBuilder
Builder that can build an SizedBox widget. See the fromDynamic for the format.
JsonTextBuilder
Builder that can build an Text widget. See the fromDynamic for the format.
JsonTextButtonBuilder
Builder that can build a TextButton widget. See the fromDynamic for the format.
JsonTextFormFieldBuilder
Builder that can build an TextFormField widget. See the fromDynamic for the format.
JsonThemeBuilder
Builder that can build an Theme widget. See the fromDynamic for the format.
JsonTooltipBuilder
Builder that can build an Tooltip widget. See the fromDynamic for the format.
JsonTweenAnimationBuilder
Builder that can build an TweenAnimationBuilder widget. See the fromDynamic for the format.
JsonWidgetBuilder
Builder that builds dynamic widgets from JSON or other Map-like structures. Applications can register their own types and builders through the JsonWidgetRegistry.
JsonWidgetBuilderContainer
Container for a JsonWidgetBuilder builder as well as an associated schema id. The schema id will be used to validate the JSON args against the schema if it is not null. If it is null, no schema validation will be performed against the JSON for this particular builder.
JsonWidgetData
JsonWidgetRegistry
Registry for both the library provided as well as custom form builders that the application may provide.
JsonWidgetType
JsonWrapBuilder
Builder that can build an Wrap widget. See the fromDynamic for the format.
MapArgProcessor
Processor for map arg. It is entry point for JsonWidgetData args. If the arg is detected to be JsonWidgetData then processing of such an arg is skipped.
NamedFunctionArg
ProcessedArg
RawArgProcessor
Processor which is accepting any arg and not process arg value at all. That processor should be used as the last processor in the pipeline.
SliverGridDelegateDecoder

Typedefs

DeferredBuilder = JsonWidgetBuilder Function(JsonWidgetBuilderBuilder builder)
JsonWidgetBuilderBuilder = JsonWidgetBuilder? Function(dynamic map, {JsonWidgetRegistry? registry})
JsonWidgetFunction = dynamic Function({required List? args, required JsonWidgetRegistry registry})

Exceptions / Errors

HandledJsonWidgetException