json_dynamic_widget_annotation library

Classes

AlignmentConverter
AppBarThemeConverter
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.
AutovalidateModeConverter
AxisConverter
BlendModeConverter
BorderRadiusConverter
BorderSideConverter
BorderStyleConverter
BottomAppBarThemeConverter
BottomNavigationBarThemeDataConverter
BottomNavigationBarTypeConverter
BottomSheetThemeDataConverter
BoxBorderConverter
BoxConstraintsConverter
BoxDecorationConverter
BoxFitConverter
BoxShadowConverter
BoxShapeConverter
BrightnessConverter
ButtonBarLayoutBehaviorConverter
ButtonBarThemeDataConverter
ButtonStyleConverter
ButtonTextThemeConverter
ButtonThemeDataConverter
CardThemeConverter
CheckboxThemeDataConverter
ChipThemeDataConverter
ClipConverter
ColorConverter
ColorSchemeConverter
CrossAxisAlignmentConverter
CrossFadeStateConverter
CupertinoTextThemeDataConverter
CupertinoThemeDataConverter
CurvesValues
DataTableThemeDataConverter
DecorationImageConverter
DecorationPositionConverter
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.
DialogThemeConverter
DividerThemeDataConverter
DragStartBehaviorConverter
EdgeInsetsGeometryConverter
ElevatedButtonThemeDataConverter
ExpressionArgProcessor
Processor that integrates https://pub.dev/packages/expressions library syntax with JsonWidgetRegistry variables and functions. All expressions should be placed in ${.*} syntax.
FilterQualityConverter
FlexFitConverter
FloatingActionButtonAnimatorConverter
FloatingActionButtonLocationConverter
FloatingActionButtonThemeDataConverter
FloatingLabelBehaviorConverter
FontFeatureConverter
FontStyleConverter
FontWeightConverter
GradientConverter
GradientTransformConverter
HitTestBehaviorConverter
IconDataConverter
IconThemeDataConverter
ImageProviderConverter
ImageRepeatConverter
InputBorderConverter
InputDecorationDecoder
InputDecorationThemeConverter
InputError
InteractiveInkFeatureFactoryConverter
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.
JsonConverter<T, S>
Implement this class to provide custom converters for a specific Type.
JsonDynamicWidgetAnnotation
JsonEnum
Allows configuration of how enum elements are treated as JSON.
JsonKey
An annotation used to specify how a field is serialized.
JsonLiteral
An annotation used to generate a private field containing the contents of a JSON file.
JsonSerializable
An annotation used to specify a class to generate code for.
JsonSizedBoxBuilder
Builder that can build an SizedBox widget. See the fromDynamic for the format.
JsonValue
An annotation used to specify how a enum value is serialized.
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
JsonWidgetInternalBuilders
JsonWidgetInternalBuildersBuilder
Used to create the selected subset of all internal builders.
JsonWidgetInternalFunctions
JsonWidgetInternalFunctionsBuilder
Used to create the selected subset of all internal functions.
JsonWidgetRegistry
Registry for both the library provided as well as custom form builders that the application may provide.
JsonWidgetType
LocaleConverter
MainAxisAlignmentConverter
MainAxisSizeConverter
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.
MaterialBannerThemeDataConverter
MaterialColorConverter
MaterialStatePropertyBorderSideConverter
MaterialStatePropertyColorConverter
MaterialStatePropertyDoubleConverter
MaterialStatePropertyEdgeInsetsGeometryConverter
MaterialStatePropertyMouseCursorConverter
MaterialStatePropertyOutlinedBorderConverter
MaterialStatePropertySizeConverter
MaterialStatePropertyTextStyleConverter
MaterialTapTargetSizeConverter
MaterialTypeConverter
MaxLengthEnforcementConverter
MouseCursorConverter
NamedFunctionArg
NotchedShapeConverter
NullableAlignmentConverter
NullableAppBarThemeConverter
NullableAutovalidateModeConverter
NullableAxisConverter
NullableBlendModeConverter
NullableBorderRadiusConverter
NullableBorderSideConverter
NullableBorderStyleConverter
NullableBottomAppBarThemeConverter
NullableBottomNavigationBarThemeDataConverter
NullableBottomNavigationBarTypeConverter
NullableBottomSheetThemeDataConverter
NullableBoxBorderConverter
NullableBoxConstraintsConverter
NullableBoxDecorationConverter
NullableBoxFitConverter
NullableBoxShadowConverter
NullableBoxShapeConverter
NullableBrightnessConverter
NullableButtonBarLayoutBehaviorConverter
NullableButtonBarThemeDataConverter
NullableButtonStyleConverter
NullableButtonTextThemeConverter
NullableButtonThemeDataConverter
NullableCardThemeConverter
NullableCheckboxThemeDataConverter
NullableChipThemeDataConverter
NullableClipConverter
NullableColorConverter
NullableColorSchemeConverter
NullableCrossAxisAlignmentConverter
NullableCrossFadeStateConverter
NullableCupertinoTextThemeDataConverter
NullableCupertinoThemeDataConverter
NullableDataTableThemeDataConverter
NullableDecorationImageConverter
NullableDecorationPositionConverter
NullableDialogThemeConverter
NullableDividerThemeDataConverter
NullableDragStartBehaviorConverter
NullableEdgeInsetsGeometryConverter
NullableElevatedButtonThemeDataConverter
NullableFilterQualityConverter
NullableFlexFitConverter
NullableFloatingActionButtonAnimatorConverter
NullableFloatingActionButtonLocationConverter
NullableFloatingActionButtonThemeDataConverter
NullableFloatingLabelBehaviorConverter
NullableFontFeatureConverter
NullableFontStyleConverter
NullableFontWeightConverter
NullableGradientConverter
NullableGradientTransformConverter
NullableHitTestBehaviorConverter
NullableIconDataConverter
NullableIconThemeDataConverter
NullableImageProviderConverter
NullableImageRepeatConverter
NullableInputBorderConverter
NullableInputDecorationThemeConverter
NullableInteractiveInkFeatureFactoryConverter
NullableLocaleConverter
NullableMainAxisAlignmentConverter
NullableMainAxisSizeConverter
NullableMaterialBannerThemeDataConverter
NullableMaterialColorConverter
NullableMaterialStatePropertyBorderSideConverter
NullableMaterialStatePropertyColorConverter
NullableMaterialStatePropertyDoubleConverter
NullableMaterialStatePropertyEdgeInsetsGeometryConverter
NullableMaterialStatePropertyMouseCursorConverter
NullableMaterialStatePropertyOutlinedBorderConverter
NullableMaterialStatePropertySizeConverter
NullableMaterialStatePropertyTextStyleConverter
NullableMaterialTapTargetSizeConverter
NullableMaterialTypeConverter
NullableMaxLengthEnforcementConverter
NullableMouseCursorConverter
NullableNavigationRailLabelTypeConverter
NullableNavigationRailThemeDataConverter
NullableNotchedShapeConverter
NullableOffsetConverter
NullableOrdinalSortKeyConverter
NullableOutlinedBorderConverter
NullableOutlinedButtonThemeDataConverter
NullablePageTransitionsBuilderConverter
NullablePageTransitionsThemeConverter
NullablePopupMenuThemeDataConverter
NullableRadioThemeDataConverter
NullableRadiusConverter
NullableRangeSliderThumbShapeConverter
NullableRangeSliderTickMarkShapeConverter
NullableRangeSliderTrackShapeConverter
NullableRangeSliderValueIndicatorShapeConverter
NullableRectConverter
NullableScrollbarThemeDataConverter
NullableScrollPhysicsConverter
NullableScrollViewKeyboardDismissBehaviorConverter
NullableSemanticsTagConverter
NullableShadowConverter
NullableShapeBorderConverter
NullableShowValueIndicatorConverter
NullableSizeConverter
NullableSliderComponentShapeConverter
NullableSliderThemeDataConverter
NullableSliderTickMarkShapeConverter
NullableSliderTrackShapeConverter
NullableSmartDashesTypeConverter
NullableSmartQuotesTypeConverter
NullableSnackBarBehaviorConverter
NullableSnackBarThemeDataConverter
NullableStackFitConverter
NullableStrutStyleConverter
NullableSwitchThemeDataConverter
NullableSystemUiOverlayStyleConverter
NullableTabBarIndicatorSizeConverter
NullableTabBarThemeConverter
NullableTargetPlatformConverter
NullableTextAlignConverter
NullableTextAlignVerticalConverter
NullableTextBaselineConverter
NullableTextButtonThemeDataConverter
NullableTextCapitalizationConverter
NullableTextDecorationConverter
NullableTextDecorationStyleConverter
NullableTextDirectionConverter
NullableTextHeightBehaviorConverter
NullableTextInputActionConverter
NullableTextInputTypeConverter
NullableTextOverflowConverter
NullableTextSelectionThemeDataConverter
NullableTextStyleConverter
NullableTextThemeConverter
NullableTextWidthBasisConverter
NullableThemeDataConverter
NullableTileModeConverter
NullableTimePickerThemeDataConverter
NullableToggleButtonsThemeDataConverter
NullableToolbarOptionsConverter
NullableTooltipThemeDataConverter
NullableTypographyConverter
NullableVerticalDirectionConverter
NullableVisualDensityConverter
OffsetConverter
OrdinalSortKeyConverter
OutlinedBorderConverter
OutlinedButtonThemeDataConverter
PageTransitionsBuilderConverter
PageTransitionsThemeConverter
PopupMenuThemeDataConverter
ProcessedArg
RadioThemeDataConverter
RadiusConverter
RangeSliderThumbShapeConverter
RangeSliderTickMarkShapeConverter
RangeSliderTrackShapeConverter
RangeSliderValueIndicatorShapeConverter
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.
RectConverter
ScrollbarThemeDataConverter
ScrollPhysicsConverter
ScrollViewKeyboardDismissBehaviorConverter
SemanticsTagConverter
ShadowConverter
ShapeBorderConverter
ShowValueIndicatorConverter
SizeConverter
SliderComponentShapeConverter
SliderThemeDataConverter
SliderTickMarkShapeConverter
SliderTrackShapeConverter
SliverGridDelegateDecoder
SmartDashesTypeConverter
SmartQuotesTypeConverter
SnackBarBehaviorConverter
SnackBarThemeDataConverter
StackFitConverter
StrutStyleConverter
SwitchThemeDataConverter
SystemUiOverlayStyleConverter
TabBarIndicatorSizeConverter
TabBarThemeConverter
TargetPlatformConverter
TextAlignConverter
TextAlignVerticalConverter
TextBaselineConverter
TextButtonThemeDataConverter
TextCapitalizationConverter
TextDecorationConverter
TextDecorationStyleConverter
TextDirectionConverter
TextHeightBehaviorConverter
TextInputActionConverter
TextInputTypeConverter
TextOverflowConverter
TextSelectionThemeDataConverter
TextStyleConverter
TextThemeConverter
TextWidthBasisConverter
ThemeDataConverter
TileModeConverter
TimePickerThemeDataConverter
ToggleButtonsThemeDataConverter
ToolbarOptionsConverter
TooltipThemeDataConverter
TypographyConverter
VerticalDirectionConverter
VisualDensityConverter
WidgetValueChanged

Enums

FieldRename
Values for the automatic field renaming behavior for JsonSerializable.

Functions

$checkedConvert<T>(Map map, String key, T castFunc(dynamic), {Object? readValue(Map, String)?}) → T
Helper function used in generated code when JsonSerializableGenerator.checked is true.
$checkedCreate<T>(String className, Map map, T constructor(S <S>(String, S (Object?), {Object? readValue(Map, String)?})), {Map<String, String> fieldKeyMap = const {}}) → T
Helper function used in generated code when JsonSerializableGenerator.checked is true.
$checkedNew<T>(String className, Map map, T constructor(), {Map<String, String>? fieldKeyMap}) → T
Helper function used in generated code when JsonSerializableGenerator.checked is true.
$checkKeys(Map map, {List<String>? allowedKeys, List<String>? requiredKeys, List<String>? disallowNullValues}) → void
Helper function used in generated fromJson code when JsonSerializable.disallowUnrecognizedKeys is true for an annotated type or JsonKey.required is true for any annotated fields.
$enumDecode<K extends Enum, V>(Map<K, V> enumValues, Object? source, {K? unknownValue}) → K
Returns the key associated with value source from enumValues, if one exists.
$enumDecodeNullable<K extends Enum, V>(Map<K, V> enumValues, Object? source, {Enum? unknownValue}) → K?
Returns the key associated with value source from enumValues, if one exists.

Typedefs

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

Exceptions / Errors

BadKeyException
A base class for exceptions thrown when decoding JSON.
CheckedFromJsonException
Exception thrown if there is a runtime exception in fromJson code generated when JsonSerializableGenerator.checked is true
DisallowedNullValueException
Exception thrown if there are keys with disallowed null values in a JSON map that was provided during deserialization.
HandledJsonWidgetException
MissingRequiredKeysException
Exception thrown if there are missing required keys in a JSON map that was provided during deserialization.
UnrecognizedKeysException
Exception thrown if there are unrecognized keys in a JSON map that was provided during deserialization.