boolFromDynamic function
Returns value as bool if possible, or fallback when not parseable.
Accepted truthy values: true, non-zero numbers, 'true', '1'.
Accepted falsy values: false, zero numbers, 'false', '0'.
Implementation
bool boolFromDynamic(final dynamic value, {required final bool fallback}) =>
switch (value) {
null => fallback,
final bool v => v,
final num v => v != 0,
final String v => switch (v.trim().toLowerCase()) {
'true' || '1' => true,
'false' || '0' => false,
_ => fallback,
},
_ => fallback,
};