GridData.fromJson constructor

GridData.fromJson(
  1. Object? raw
)

Implementation

factory GridData.fromJson(Object? raw) {
  if (raw is GridData) return raw;
  final json = JsonValue.map(raw) ?? const <String, dynamic>{};
  return GridData(
    show: JsonValue.boolOrNull(json['show']),
    id: JsonValue.string(json['id']),
    left: JsonValue.doubleOrNull(json['left']),
    top: JsonValue.doubleOrNull(json['top']),
    right: JsonValue.doubleOrNull(json['right']),
    bottom: JsonValue.doubleOrNull(json['bottom']),
    width: JsonValue.doubleOrNull(json['width']),
    height: JsonValue.doubleOrNull(json['height']),
    containLabel: JsonValue.boolOrNull(json['containLabel']),
    backgroundColor: JsonValue.string(json['backgroundColor']),
    borderColor: JsonValue.string(json['borderColor']),
    borderWidth: JsonValue.doubleOrNull(json['borderWidth']),
    horizontalInterval:
        JsonValue.doubleOrNull(json['horizontalInterval']) ?? 0.5,
    horizontalColor:
        JsonValue.string(json['horizontalColor']) ?? 'rgba(0, 0, 0, 0.1)',
    horizontalWidth: JsonValue.doubleOrNull(json['horizontalWidth']) ?? 0.5,
    horizontalDashArray:
        JsonValue.list(json['horizontalDashArray'])
            ?.map(JsonValue.intOrNull)
            .whereType<int>()
            .toList(growable: false) ??
        const [5, 5],
    verticalColor:
        JsonValue.string(json['verticalColor']) ?? 'rgba(0, 0, 0, 0.1)',
    verticalWidth: JsonValue.doubleOrNull(json['verticalWidth']) ?? 0.5,
    verticalDashArray:
        JsonValue.list(json['verticalDashArray'])
            ?.map(JsonValue.intOrNull)
            .whereType<int>()
            .toList(growable: false) ??
        const [5, 5],
    showHorizontalLines:
        JsonValue.boolOrNull(json['showHorizontalLines']) ?? true,
    showVerticalLines:
        JsonValue.boolOrNull(json['showVerticalLines']) ?? true,
    color: JsonValue.string(json['color']) ?? 'rgba(0, 0, 0, 0.1)',
    lineStyle: ChartLineStyle.fromJson(json['lineStyle']),
  );
}