resolveTextDecoration static method
Resolves text decoration from string to TextDecoration enum
Implementation
static TextDecoration? resolveTextDecoration(dynamic value) {
if (value == null) return null;
// If it's already a TextDecoration, return it directly
if (value is TextDecoration) {
return value;
}
// Otherwise, resolve as string
if (value is String) {
switch (value.toLowerCase()) {
case 'underline':
return TextDecoration.underline;
case 'line-through':
case 'lineThrough':
return TextDecoration.lineThrough;
case 'overline':
return TextDecoration.overline;
case 'none':
return TextDecoration.none;
default:
throw ArgumentError(
'Invalid text decoration: "$value". Supported values: underline, line-through, overline, none',
);
}
}
throw ArgumentError(
'Text decoration must be a String or TextDecoration, got ${value.runtimeType}',
);
}