tuxbot-bot/tuxbot/cogs/Logs/functions/utils.py

27 lines
637 B
Python

from collections import Counter
from typing import Dict
def sort_by(_events: Counter) -> Dict[str, dict]:
majors = (
"guild",
"channel",
"message",
"invite",
"integration",
"presence",
"voice",
"other",
)
sorted_events: Dict[str, Dict] = {m: {} for m in majors}
for event, count in _events:
done = False
for m in majors:
if event.lower().startswith(m):
sorted_events[m][event] = count
done = True
if not done:
sorted_events["other"][event] = count
return sorted_events