encodeRecords function

List<Map<String, dynamic>> encodeRecords(
  1. List<Map<String, dynamic>> records
)

Encodes any Uint8List (or raw bytes) in the record maps into a {"encoding": "base64", "data": "..."} wrapper.

Implementation

List<Map<String, dynamic>> encodeRecords(List<Map<String, dynamic>> records) {
  final transformedRecords = <Map<String, dynamic>>[];

  for (final r in records) {
    final c = <String, dynamic>{};
    for (final k in r.keys) {
      final v = r[k];
      if (v is Uint8List) {
        c[k] = {"encoding": "base64", "data": base64Encode(v)};
      } else {
        c[k] = v;
      }
    }
    transformedRecords.add(c);
  }

  return transformedRecords;
}