diff options
Diffstat (limited to 'pysite/tables.py')
| -rw-r--r-- | pysite/tables.py | 89 | 
1 files changed, 89 insertions, 0 deletions
| diff --git a/pysite/tables.py b/pysite/tables.py new file mode 100644 index 00000000..4d9142fa --- /dev/null +++ b/pysite/tables.py @@ -0,0 +1,89 @@ +from typing import List, NamedTuple + + +class Table(NamedTuple): +    primary_key: str +    keys: List[str] +    locked: bool = True + + +TABLES = { +    "hiphopify": Table(  # Users in hiphop prison +        primary_key="user_id", +        keys=sorted([ +            "user_id", +            "end_timestamp", +            "forced_nick" +        ]) +    ), + +    "hiphopify_namelist": Table(  # Names and images of hiphop artists +        primary_key="name", +        keys=sorted([ +            "name", +            "image_url" +        ]), +        locked=False +    ), + +    "oauth_data": Table(  # OAuth login information +        primary_key="id", +        keys=sorted([ +            "id", +            "access_token", +            "expires_at", +            "refresh_token", +            "snowflake" +        ]) +    ), + +    "tags": Table(  # Tag names and values +        primary_key="tag_name", +        keys=sorted([ +            "tag_name", +            "tag_content" +        ]), +        locked=False +    ), + +    "users": Table(  # Users from the Discord server +        primary_key="user_id", +        keys=sorted([ +            "user_id", +            "roles", +            "username", +            "discriminator", +            "email" +        ]) +    ), + +    "wiki": Table(  # Wiki articles +        primary_key="slug", +        keys=sorted([ +            "slug", +            "headers", +            "html", +            "rst", +            "text", +            "title" +        ]) +    ), + +    "wiki_revisions": Table(  # Revisions of wiki articles +        primary_key="id", keys=sorted([ +            "id", +            "date", +            "post", +            "slug", +            "user" +        ]) +    ), + +    "_versions": Table(  # Table migration versions +        primary_key="table", +        keys=sorted([ +            "table", +            "version" +        ]) +    ) +} | 
