parseSseEvents<T> function
Implementation
ParseSseEventsResult<T> parseSseEvents<T>(
String input,
T Function(String) dataParser,
) {
final stringParts = input.split("\n\n");
final endingPart = stringParts.removeLast();
final result = <SseEvent<T>>[];
for (final part in stringParts) {
final event = parseSseEvent(part);
if (event == null) {
print("WARN: Invalid message data $event");
continue;
}
result.add(SseEvent<T>.fromString(part, dataParser));
}
return ParseSseEventsResult(
events: result,
leftoverData: endingPart,
);
}