parseSdJwtData function

Map<String, dynamic> parseSdJwtData(
  1. String rawData
)

Implementation

Map<String, dynamic> parseSdJwtData(String rawData) {
  Map<String, dynamic> data = {};
  for (var doc in rawData.split("~")) {
    if (doc.length % 4 > 0) {
      doc += '=' * (4 - doc.length % 4);
    }
    List<int> bytes = base64Decode(doc);

    var parsed = jsonDecode(String.fromCharCodes(bytes));
    data[parsed[1].toString()] = parsed[2];
  }
  return data;
}