decodeBorderSide static method

BorderSide? decodeBorderSide(
  1. dynamic value, {
  2. bool validate = true,
})

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

{
  "color": "<Color>",
  "strokeAlign": "<Double>",
  "style": "<BorderStyle>",
  "width": "<double>"
}

See also:

Implementation

static BorderSide? decodeBorderSide(
  dynamic value, {
  bool validate = true,
}) {
  BorderSide? result;

  if (value is BorderSide) {
    result = value;
  } else if (value != null) {
    assert(SchemaValidator.validate(
      schemaId: '$_baseSchemaUrl/border_side',
      value: value,
      validate: validate,
    ));
    result = BorderSide(
      color: decodeColor(
            value['color'],
            validate: false,
          ) ??
          const Color(0xff000000),
      strokeAlign: JsonClass.maybeParseDouble(value['strokeAlign']) ??
          BorderSide.strokeAlignInside,
      style: decodeBorderStyle(
            value['style'],
            validate: false,
          ) ??
          BorderStyle.solid,
      width: JsonClass.maybeParseDouble(value['width'], 1.0)!,
    );
  }

  return result;
}