generateStringResKey method
Future<void>
generateStringResKey(
- BuildStep buildStep
)
Implementation
Future<void> generateStringResKey(BuildStep buildStep) async {
final messages =
(json.decode(await buildStep.readAsString(buildStep.inputId)) as Map)
.cast<String, String>();
final outputBuffer = StringBuffer(
"// Generated by the string resources builder. DO NOT EDIT!\n\n");
outputBuffer.writeln("class StringResKey {");
messages.forEach((key, value) {
outputBuffer.writeln(' static const String $key = "$key";');
});
outputBuffer.writeln("}");
final genFile = File(genCodeDir +
stringResKeyFileName +
buildExtensions[buildStep.inputId.extension]!.first);
final isExist = await genFile.exists();
if (!isExist) {
await genFile.create(recursive: true);
}
await genFile.writeAsString(outputBuffer.toString());
}