List decodeConcatenatedData()

in dartfn/lib/src/stagehand/common.dart [17:36]


List<TemplateFile> decodeConcatenatedData(List<String> data) {
  final results = <TemplateFile>[];

  for (var i = 0; i < data.length; i += 3) {
    final path = data[i];
    final type = data[i + 1];
    final raw = data[i + 2].replaceAll(_whiteSpace, '');

    final decoded = base64.decode(raw);

    if (type == 'binary') {
      results.add(TemplateFile.fromBinary(path, decoded));
    } else {
      final source = utf8.decode(decoded);
      results.add(TemplateFile(path, source));
    }
  }

  return results;
}