from dataclasses import dataclass @dataclass(frozen=True) class ColumnContent: name: str type: str displayed_by_default: bool hidden: bool = False never_hidden: bool = False def auto_eval_columns(): return [ ColumnContent("Algorithm", "markdown", True, never_hidden=True), ColumnContent("Date", "str", True), ColumnContent("Status", "str", True), ColumnContent("Total Flow ⬆️", "number", True), ColumnContent("Proportionality Error ⬇️", "number", True), ColumnContent("Min Alpha ⬆️", "number", True), ColumnContent("Execution Time (s)", "number", True), ] def fields(raw_class): return [v for k, v in raw_class.__dict__.items() if not k.startswith("__")] COLS = [c.name for c in auto_eval_columns() if not c.hidden]