decodeAnnotationLabelPosition static method

AnnotationLabelPosition? decodeAnnotationLabelPosition(
  1. dynamic map, {
  2. bool validate = true,
})

Expects the map to be either a common.AnnotationLabelPosition or a String containing one of the following values:

  • auto
  • horizontal
  • vertical

Implementation

static common.AnnotationLabelPosition? decodeAnnotationLabelPosition(
  dynamic map, {
  bool validate = true,
}) {
  common.AnnotationLabelPosition? result;

  if (map is common.AnnotationLabelPosition) {
    result = map;
  } else if (map != null) {
    assert(SchemaValidator.validate(
      schemaId: '$_baseSchemaUrl/annotation_label_position',
      value: map,
      validate: validate,
    ));
    switch (map) {
      case 'auto':
        result = common.AnnotationLabelPosition.auto;
        break;

      case 'inside':
        result = common.AnnotationLabelPosition.inside;
        break;

      case 'margin':
        result = common.AnnotationLabelPosition.margin;
        break;

      case 'outside':
        result = common.AnnotationLabelPosition.outside;
        break;

      default:
        throw Exception(
          '[decodeAnnotationLabelPosition]: unknown value: [$map]',
        );
    }
  }

  return result;
  //result;
}