void encodeBundleTranslations(Map<String, dynamic> bundle) {
for (final String key in bundle.keys) {
if (key.startsWith('@')) {
continue;
}
final translation = bundle[key] as String;
bundle[key] = translation.runes.map((int code) {
final codeString = '00${code.toRadixString(16)}';
return '\\u${codeString.substring(codeString.length - 4)}';
}).join();
}
}
String generateArbString(Map<String, dynamic> bundle) {
final contents = StringBuffer();
contents.writeln('{');
for (final String key in bundle.keys) {
contents.writeln(' "$key": "${bundle[key]}"${key == bundle.keys.last ? '' : ','}');
}
contents.writeln('}');
return contents.toString();
}