deserializeIcon function
Implementation
IconData? deserializeIcon(Map<String, dynamic> iconMap) {
try {
final pack = iconMap['pack'];
final iconKey = iconMap['key'];
switch (pack) {
case "material":
return Material.icons[iconKey];
case "cupertino":
return Cupertino.cupertinoIcons[iconKey];
case "fontAwesomeIcons":
return FontAwesome.fontAwesomeIcons[iconKey];
case "lineAwesomeIcons":
return LineAwesome.lineAwesomeIcons[iconKey];
case "custom":
final iconData = iconMap['iconData'];
return IconData(
iconData['codePoint'],
fontFamily: iconData['fontFamily'],
fontPackage: iconData['fontPackage'],
matchTextDirection: iconData['matchTextDirection'],
);
default:
return null;
}
} catch (e) {
return null;
}
}