"use strict"; module.exports = function groupEvents(events) { let currentSender = ""; let currentType = ""; let currentEvents = []; let eventGroups = []; function finalizeGroup() { if (currentEvents.length > 0) { eventGroups.push({ sender: currentSender, events: currentEvents }); currentEvents = []; } } events.forEach((event) => { /* TODO: Eventually group multiple non-message events from a single user into a single event item as well, even when they are of different types */ if (event.sender !== currentSender || event.type !== currentType) { finalizeGroup(); currentSender = event.sender; currentType = event.type; } currentEvents.push(event); }); finalizeGroup(); return eventGroups; };