decodeBadgeThemeData static method

BadgeThemeData? decodeBadgeThemeData(
  1. dynamic value, {
  2. bool validate = true,
})

Decodes the given value to an BadgeThemeData. This expects the given value to follow the structure below:

{
  "alignment": "<AlignmentGeometry>",
  "backgroundColor": "<Color>",
  "largeSize": "<double>",
  "offset": "<Offset>",
  "padding": "<EdgeInsets>",
  "smallSize": "<double>",
  "textColor": "<Color>",
  "textStyle": "<TextStyle>"
}

See also:

Implementation

static BadgeThemeData? decodeBadgeThemeData(
  dynamic value, {
  bool validate = true,
}) {
  BadgeThemeData? result;

  if (value is BadgeThemeData) {
    result = value;
  } else if (value != null) {
    assert(SchemaValidator.validate(
      schemaId: '$_baseSchemaUrl/badge_theme_data',
      value: value,
      validate: validate,
    ));
    result = BadgeThemeData(
      alignment: decodeAlignmentGeometry(
        value['alignment'],
        validate: false,
      ),
      backgroundColor: decodeColor(
        value['backgroundColor'],
        validate: false,
      ),
      largeSize: JsonClass.maybeParseDouble(value['largeSize']),
      offset: decodeOffset(
        value['offset'],
        validate: false,
      ),
      padding: decodeEdgeInsetsGeometry(
        value['padding'],
        validate: false,
      ),
      smallSize: JsonClass.maybeParseDouble(value['smallSize']),
      textColor: decodeColor(
        value['textColor'],
        validate: false,
      ),
      textStyle: decodeTextStyle(
        value['textStyle'],
        validate: false,
      ),
    );
  }

  return result;
}