getEnumProperty<TEnum> method
Property<TEnum>
getEnumProperty<
TEnum>( - String name,
- List<TEnum> enumValues, {
- required TEnum defaultValue(),
- bool isImmutable = true,
})
Implementation
Property<TEnum> getEnumProperty<TEnum>(
String name,
List<TEnum> enumValues, {
required TEnum Function() defaultValue,
bool isImmutable = true,
}) {
return getProperty<TEnum>(
name,
(s) {
var lowerCaseInput = s.toLowerCase();
return enumValues.firstWhere(
(e) {
var enumString = e.toString().toLowerCase();
if (enumString == lowerCaseInput) {
return true;
}
var lastPart = enumString.split('.').last;
return lastPart == lowerCaseInput;
},
orElse: defaultValue,
);
},
defaultValue,
isImmutable: isImmutable,
);
}