parseDynamicTextStyle function
Implementation
DynamicTextStyle? parseDynamicTextStyle(Map<String, dynamic>? map) {
if (map == null) return null;
Color? color = parseColor(map['color']);
Color? backgroundColor = parseColor(map['backgroundColor']);
String? fontFamily = map['fontFamily'];
Dimension? fontSize = parseDimension(map['fontSize']);
FontStyle? fontStyle =
'italic' == map['fontStyle'] ? FontStyle.italic : FontStyle.normal;
FontWeight? fontWeight =
'w700' == map['fontWeight'] ? FontWeight.bold : FontWeight.normal;
TextDecoration? decoration = parseTextDecoration(map['decoration']);
Color? decorationColor = parseColor(map["decorationColor"]);
TextDecorationStyle? decorationStyle =
parseTextDecorationStyle(map['decorationStyle']);
double? decorationThickness = map['decorationThickness']?.toDouble();
double? height = map['height']?.toDouble();
Dimension? letterSpacing = parseDimension(map['letterSpacing']);
Dimension? wordSpacing = parseDimension(map['wordSpacing']);
List<Shadow>? shadows =
map["shadows"]?.map((e) => parseShadow(e)!).toList().cast<Shadow>();
return DynamicTextStyle(
color: color,
backgroundColor: backgroundColor,
fontSize: fontSize,
fontFamily: fontFamily,
fontStyle: fontStyle,
fontWeight: fontWeight,
decoration: decoration,
decorationColor: decorationColor,
decorationStyle: decorationStyle,
decorationThickness: decorationThickness,
height: height,
letterSpacing: letterSpacing,
wordSpacing: wordSpacing,
shadows: shadows);
}