SseEvent<TData>.fromString constructor

SseEvent<TData>.fromString(
  1. String input,
  2. TData parser(
    1. String
    )
)

Implementation

factory SseEvent.fromString(
  String input,
  TData Function(String) parser,
) {
  final sse = SseRawEvent<TData>.fromString(input);
  try {
    switch (sse.event) {
      case "message":
        return SseMessageEvent.fromRawSseEvent(sse, parser);
      case "done":
        return SseDoneEvent.fromRawSseEvent(sse);
      default:
        return SseMessageEvent.fromRawSseEvent(sse, parser);
    }
  } catch (err) {
    return sse;
  }
}