ExESDB.Aggregator (ex_esdb v0.1.4)

Aggregates events from an event stream using tagged rules: GIVEN: an Event of roughly this format: %{

event_id: "1234567890",
event_type: "user.birthday_celebrated:v1",
stream_id: "celebrate-user-birthday-john",
version: 1,
data: %{
  name: "John",
  age: {:sum, 1},
  venue: {:overwrite, "New York"}
},
timestamp: ~U[2022-01-01 12:00:00Z],
epoch: 1641013200,
metadata: %{
  source_id: "1234567890"
}

}

Summary

Functions

Folds a list of events into a single map.

Functions

finalize_map(tagged_map)

foldl(sorted_events, state \\ %{})

Folds a list of events into a single map.