decodeCupertinoTextThemeData static method

CupertinoTextThemeData? decodeCupertinoTextThemeData(
  1. dynamic value, {
  2. bool validate = true,
})

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

{
  "actionTextStyle": "<TextStyle>",
  "dateTimePickerTextStyle": "<TextStyle>",
  "navActionTextStyle": "<TextStyle>",
  "navLargeTitleTextStyle":<TextStyle>",
  "navTitleTextStyle": "<TextStyle>",
  "pickerTextStyle": "<TextStyle>",
  "primaryColor": "<Color>"
  "tabLabelTextStyle": "<TextStyle>",
  "textStyle": "<TextStyle>",
}

See also:

Implementation

static CupertinoTextThemeData? decodeCupertinoTextThemeData(
  dynamic value, {
  bool validate = true,
}) {
  CupertinoTextThemeData? result;

  if (value is CupertinoTextThemeData) {
    result = value;
  } else if (value != null) {
    assert(SchemaValidator.validate(
      schemaId: '$_baseSchemaUrl/cupertino_text_theme_data',
      value: value,
      validate: validate,
    ));
    result = CupertinoTextThemeData(
      actionTextStyle: decodeTextStyle(
        value['actionTextStyle'],
        validate: false,
      ),
      dateTimePickerTextStyle: decodeTextStyle(
        value['dateTimePickerTextStyle'],
        validate: false,
      ),
      navActionTextStyle: decodeTextStyle(
        value['navActionTextStyle'],
        validate: false,
      ),
      navLargeTitleTextStyle: decodeTextStyle(
        value['navLargeTitleTextStyle'],
        validate: false,
      ),
      navTitleTextStyle: decodeTextStyle(
        value['navTitleTextStyle'],
        validate: false,
      ),
      pickerTextStyle: decodeTextStyle(
        value['pickerTextStyle'],
        validate: false,
      ),
      primaryColor: decodeColor(
            value['primaryColor'],
            validate: false,
          ) ??
          CupertinoColors.systemBlue,
      tabLabelTextStyle: decodeTextStyle(
        value['tabLabelTextStyle'],
        validate: false,
      ),
      textStyle: decodeTextStyle(
        value['textStyle'],
        validate: false,
      ),
    );
  }

  return result;
}