fromDynamic static method

JsonWrapBuilder? fromDynamic(
  1. dynamic map, {
  2. JsonWidgetRegistry? registry,
})

Builds the builder from a Map-like dynamic structure. This expects the JSON format to be of the following structure:

{
  "alignment": "<WrapAlignment>",
  "clipBehavior": "<Clip>",
  "crossAxisAlignment": "<WrapCrossAlignment>",
  "direction": "<Axis>",
  "runAlignment": "<WrapAlignment>",
  "runSpacing": "<double>",
  "spacing": "<double>",
  "textDirection": "<TextDirection>",
  "verticalDirection": "<VerticalDirection>"
}

See also:

  • ThemeDecoder.decodeAxis
  • ThemeDecoder.decodeClip
  • ThemeDecoder.decodeTextDirection
  • ThemeDecoder.decodeWrapAlignment
  • ThemeDecoder.decodeVerticalDirection
  • ThemeDecoder.decodeWrapCrossAlignment

Implementation

static JsonWrapBuilder? fromDynamic(
  dynamic map, {
  JsonWidgetRegistry? registry,
}) {
  JsonWrapBuilder? result;
  if (map != null) {
    result = JsonWrapBuilder(
      alignment: ThemeDecoder.decodeWrapAlignment(
        map['alignment'],
        validate: false,
      ),
      clipBehavior: ThemeDecoder.decodeClip(
        map['clipBehavior'],
        validate: false,
      ),
      crossAxisAlignment: ThemeDecoder.decodeWrapCrossAlignment(
        map['crossAxisAlignment'],
        validate: false,
      ),
      direction: ThemeDecoder.decodeAxis(
        map['axis'],
        validate: false,
      ),
      runAlignment: ThemeDecoder.decodeWrapAlignment(
        map['runAlignment'],
        validate: false,
      ),
      spacing: JsonClass.maybeParseDouble(map['spacing']),
      runSpacing: JsonClass.maybeParseDouble(map['runSpacing']),
      textDirection: ThemeDecoder.decodeTextDirection(
        map['textDirection'],
        validate: false,
      ),
      verticalDirection: ThemeDecoder.decodeVerticalDirection(
        map['verticalDirection'],
        validate: false,
      ),
    );
  }

  return result;
}