decodePercentAxisSpec<D> static method

PercentAxisSpec? decodePercentAxisSpec<D>(
  1. dynamic map, {
  2. bool validate = true,
})

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

{
  "renderSpec": <RenderSpec>,
  "showAxisLine": <bool>,
  "tickFormatterSpec": <NumericTickFormatterSpec>,
  "tickProviderSpec": <NumericTickProviderSpec>,
  "viewport": <NumericExtents>
}

Implementation

static charts.PercentAxisSpec? decodePercentAxisSpec<D>(
  dynamic map, {
  bool validate = true,
}) {
  charts.PercentAxisSpec? result;

  if (map is charts.PercentAxisSpec) {
    result = map;
  } else if (map != null) {
    assert(SchemaValidator.validate(
      schemaId: '$_baseSchemaUrl/percent_axis_spec',
      value: map,
      validate: validate,
    ));
    result = charts.PercentAxisSpec(
      renderSpec: decodeRenderSpec(
        map['renderSpec'],
        validate: false,
      ),
      showAxisLine: map['showAxisLine'] == null
          ? null
          : JsonClass.parseBool(map['showAxisLine']),
      tickFormatterSpec: decodeNumericTickFormatterSpec(
        map['tickFormatterSpec'],
        validate: false,
      ),
      tickProviderSpec: decodeNumericTickProviderSpec(
        map['tickProviderSpec'],
        validate: false,
      ),
      viewport: decodeNumericExtents(
        map['viewport'],
        validate: false,
      ),
    );
  }

  return result;
}