decodeLocale static method

Locale? decodeLocale(
  1. dynamic value, {
  2. bool validate = true,
})

Decodes the given value to an Locale. This expects the given value to be of the following structure:

{
  "countryCode": <String>,
  "languageCode": <String>
}

Implementation

static Locale? decodeLocale(
  dynamic value, {
  bool validate = true,
}) {
  Locale? result;

  if (value is Locale) {
    result = value;
  } else if (value != null) {
    assert(SchemaValidator.validate(
      schemaId: '$_baseSchemaUrl/locale',
      value: value,
      validate: validate,
    ));
    result = Locale(
      value['languageCode'],
      value['countryCode'],
    );
  }

  return result;
}