Skip to content

Commit

Permalink
wip nfc pull out _parseInt
Browse files Browse the repository at this point in the history
  • Loading branch information
gnprice committed Oct 12, 2023
1 parent 34e9f1e commit 1b31d57
Showing 1 changed file with 11 additions and 11 deletions.
22 changes: 11 additions & 11 deletions lib/api/notif.dart
Original file line number Diff line number Diff line change
Expand Up @@ -131,8 +131,7 @@ class FcmMessageDmRecipient extends FcmMessageRecipient {
return FcmMessageDmRecipient(allRecipientIds: switch (json) {
{'pm_users': var pmUsers} => const _IntListConverter().fromJson(pmUsers),
{'sender_id': var senderId, 'user_id': var userId} =>
_pairSet(const _IntConverter().fromJson(senderId),
const _IntConverter().fromJson(userId)),
_pairSet(_parseInt(senderId), _parseInt(userId)),
_ => throw Exception("bad recipient"),
});
}
Expand Down Expand Up @@ -177,23 +176,24 @@ class RemoveFcmMessage extends FcmMessageWithIdentity {
Map<String, dynamic> toJson() => _$RemoveFcmMessageToJson(this);
}

class _IntConverter extends JsonConverter<int, String> {
const _IntConverter();
class _IntListConverter extends JsonConverter<List<int>, String> {
const _IntListConverter();

@override
int fromJson(String json) => int.parse(json, radix: 10);
List<int> fromJson(String json) => json.split(',').map(_parseInt).toList();

@override
String toJson(int value) => value.toString();
String toJson(List<int> value) => value.join(',');
}

class _IntListConverter extends JsonConverter<List<int>, String> {
const _IntListConverter();
class _IntConverter extends JsonConverter<int, String> {
const _IntConverter();

@override
List<int> fromJson(String json) =>
json.split(',').map((s) => int.parse(s, radix: 10)).toList();
int fromJson(String json) => _parseInt(json);

@override
String toJson(List<int> value) => value.join(',');
String toJson(int value) => value.toString();
}

int _parseInt(String string) => int.parse(string, radix: 10);

0 comments on commit 1b31d57

Please sign in to comment.