sanitizeFieldName function
Implementation
String sanitizeFieldName(String key) {
// Keep original JSON key for mapping; field name must be a valid identifier.
if (isValidDartIdentifier(key)) return key;
// Replace invalid chars with underscores, and prefix if starts with digit.
var s = key.replaceAll(RegExp(r'[^A-Za-z0-9_]'), '');
// if (!RegExp(r'^[A-Za-z_]').hasMatch(s)) s = '$s';
return s;
}