diff --git a/jarvis_core/db/models/__init__.py b/jarvis_core/db/models/__init__.py index 85e6bb0..b4035ac 100644 --- a/jarvis_core/db/models/__init__.py +++ b/jarvis_core/db/models/__init__.py @@ -1,5 +1,6 @@ """JARVIS database models.""" from datetime import datetime +from typing import Any, List import marshmallow as ma from umongo import Document, EmbeddedDocument, fields @@ -16,134 +17,134 @@ class RawField(fields.BaseField, ma.fields.Raw): @JARVIS_INST.register class Autopurge(Document): - guild = fields.IntegerField(required=True) - channel = fields.IntegerField(required=True) - delay = fields.IntegerField(default=30) - admin = fields.IntegerField(required=True) - created_at = fields.DateTimeField(default=datetime.now) + guild: int = fields.IntegerField(required=True) + channel: int = fields.IntegerField(required=True) + delay: int = fields.IntegerField(default=30) + admin: int = fields.IntegerField(required=True) + created_at: datetime = fields.DateTimeField(default=datetime.now) @JARVIS_INST.register class Autoreact(Document): - guild = fields.IntegerField(required=True) - channel = fields.IntegerField(required=True) - reactions = fields.ListField(fields.StringField()) - admin = fields.IntegerField(required=True) - created_at = fields.DateTimeField(default=datetime.now) + guild: int = fields.IntegerField(required=True) + channel: int = fields.IntegerField(required=True) + reactions: List[str] = fields.ListField(fields.StringField()) + admin: int = fields.IntegerField(required=True) + created_at: datetime = fields.DateTimeField(default=datetime.now) @JARVIS_INST.register class Config(Document): """Config database object.""" - key = fields.StringField(required=True) - value = RawField(required=True) + key: str = fields.StringField(required=True) + value: Any = RawField(required=True) @JARVIS_INST.register class Guess(Document): """Guess database object.""" - correct = fields.BooleanField(default=False) - guess = fields.StringField(required=True) - user = fields.IntegerField(required=True) + correct: bool = fields.BooleanField(default=False) + guess: str = fields.StringField(required=True) + user: int = fields.IntegerField(required=True) @JARVIS_INST.register class Lock(Document): """Lock database object.""" - active = fields.BooleanField(default=True) - admin = fields.IntegerField(required=True) - channel = fields.IntegerField(required=True) - duration = fields.IntegerField(default=10) - guild = fields.IntegerField(required=True) - reason = fields.StringField(required=True) - created_at = fields.DateTimeField(default=datetime.utcnow) + active: bool = fields.BooleanField(default=True) + admin: int = fields.IntegerField(required=True) + channel: int = fields.IntegerField(required=True) + duration: int = fields.IntegerField(default=10) + guild: int = fields.IntegerField(required=True) + reason: str = fields.StringField(required=True) + created_at: datetime = fields.DateTimeField(default=datetime.utcnow) @JARVIS_INST.register class Purge(Document): """Purge database object.""" - admin = fields.IntegerField(required=True) - channel = fields.IntegerField(required=True) - guild = fields.IntegerField(required=True) - count = fields.IntegerField(default=10) - created_at = fields.DateTimeField(default=datetime.utcnow) + admin: int = fields.IntegerField(required=True) + channel: int = fields.IntegerField(required=True) + guild: int = fields.IntegerField(required=True) + count: int = fields.IntegerField(default=10) + created_at: datetime = fields.DateTimeField(default=datetime.utcnow) @JARVIS_INST.register class Reminder(Document): """Reminder database object.""" - active = fields.BooleanField(default=True) - user = fields.IntegerField(required=True) - guild = fields.IntegerField(required=True) - channel = fields.IntegerField(required=True) - message = fields.StringField(required=True) - remind_at = fields.DateTimeField(required=True) - created_at = fields.DateTimeField(default=datetime.utcnow) - private = fields.BooleanField(default=False) + active: bool = fields.BooleanField(default=True) + user: int = fields.IntegerField(required=True) + guild: int = fields.IntegerField(required=True) + channel: int = fields.IntegerField(required=True) + message: str = fields.StringField(required=True) + remind_at: datetime = fields.DateTimeField(required=True) + created_at: datetime = fields.DateTimeField(default=datetime.utcnow) + private: bool = fields.BooleanField(default=False) @JARVIS_INST.register class Rolegiver(Document): """Rolegiver database object.""" - guild = fields.IntegerField(required=True) - roles = fields.ListField(fields.IntegerField()) + guild: int = fields.IntegerField(required=True) + roles: List[int] = fields.ListField(fields.IntegerField()) @JARVIS_INST.register class Bypass(EmbeddedDocument): """Roleping bypass embedded object.""" - users = fields.ListField(fields.IntegerField()) - roles = fields.ListField(fields.IntegerField()) + users: List[int] = fields.ListField(fields.IntegerField()) + roles: List[int] = fields.ListField(fields.IntegerField()) @JARVIS_INST.register class Roleping(Document): """Roleping database object.""" - active = fields.BooleanField(default=True) - role = fields.IntegerField(required=True) - guild = fields.IntegerField(required=True) - admin = fields.IntegerField(required=True) - bypass = fields.EmbeddedField(Bypass) - created_at = fields.DateTimeField(default=datetime.utcnow) + active: bool = fields.BooleanField(default=True) + role: int = fields.IntegerField(required=True) + guild: int = fields.IntegerField(required=True) + admin: int = fields.IntegerField(required=True) + bypass: Bypass = fields.EmbeddedField(Bypass) + created_at: datetime = fields.DateTimeField(default=datetime.utcnow) @JARVIS_INST.register class Setting(Document): """Setting database object.""" - guild = fields.IntegerField(required=True) - setting = fields.StringField(required=True) - value = RawField() + guild: int = fields.IntegerField(required=True) + message: str = fields.StringField(required=True) + value: Any = RawField() @JARVIS_INST.register class Star(Document): """Star database object.""" - active = fields.BooleanField(default=True) - index = fields.IntegerField(required=True) - message = fields.IntegerField(required=True) - channel = fields.IntegerField(required=True) - starboard = fields.IntegerField(required=True) - guild = fields.IntegerField(required=True) - admin = fields.IntegerField(required=True) - star = fields.IntegerField(required=True) - created_at = fields.DateTimeField(default=datetime.utcnow) + active: bool = fields.BooleanField(default=True) + index: int = fields.IntegerField(required=True) + message: int = fields.IntegerField(required=True) + channel: int = fields.IntegerField(required=True) + starboard: int = fields.IntegerField(required=True) + guild: int = fields.IntegerField(required=True) + admin: int = fields.IntegerField(required=True) + star: int = fields.IntegerField(required=True) + created_at: datetime = fields.DateTimeField(default=datetime.utcnow) @JARVIS_INST.register class Starboard(Document): """Starboard database object.""" - channel = fields.IntegerField(required=True) - guild = fields.IntegerField(required=True) - admin = fields.IntegerField(required=True) - created_at = fields.DateTimeField(default=datetime.utcnow) + channel: int = fields.IntegerField(required=True) + guild: int = fields.IntegerField(required=True) + admin: int = fields.IntegerField(required=True) + created_at: datetime = fields.DateTimeField(default=datetime.utcnow) diff --git a/jarvis_core/db/models/actions.py b/jarvis_core/db/models/actions.py index 89af740..58ac35d 100644 --- a/jarvis_core/db/models/actions.py +++ b/jarvis_core/db/models/actions.py @@ -8,63 +8,63 @@ from jarvis_core.db import JARVIS_INST @JARVIS_INST.register class Ban(Document): - active = fields.BooleanField(default=True) - admin = fields.IntegerField(required=True) - user = fields.IntegerField(required=True) - username = fields.StringField(required=True) - discrim = fields.IntegerField(required=True) - duration = fields.IntegerField(required=False) - guild = fields.IntegerField(required=True) - type = fields.StringField(default="perm") - reason = fields.StringField(required=True) - created_at = fields.DateTimeField(default=datetime.utcnow) + active: bool = fields.BooleanField(default=True) + admin: int = fields.IntegerField(required=True) + user: int = fields.IntegerField(required=True) + username: str = fields.StringField(required=True) + discrim: int = fields.IntegerField(required=True) + duration: int = fields.IntegerField(required=False) + guild: int = fields.IntegerField(required=True) + type: str = fields.StringField(default="perm") + reason: str = fields.StringField(required=True) + created_at: datetime = fields.DateTimeField(default=datetime.utcnow) @JARVIS_INST.register class Kick(Document): """Kick database object.""" - admin = fields.IntegerField(required=True) - guild = fields.IntegerField(required=True) - reason = fields.StringField(required=True) - user = fields.IntegerField(required=True) - created_at = fields.DateTimeField(default=datetime.utcnow) + admin: int = fields.IntegerField(required=True) + guild: int = fields.IntegerField(required=True) + reason: str = fields.StringField(required=True) + user: int = fields.IntegerField(required=True) + created_at: datetime = fields.DateTimeField(default=datetime.utcnow) @JARVIS_INST.register class Mute(Document): """Mute database object.""" - active = fields.BooleanField(default=True) - user = fields.IntegerField(required=True) - admin = fields.IntegerField(required=True) - duration = fields.IntegerField(default=10) - guild = fields.IntegerField(required=True) - reason = fields.StringField(required=True) - created_at = fields.DateTimeField(default=datetime.utcnow) + active: bool = fields.BooleanField(default=True) + user: int = fields.IntegerField(required=True) + admin: int = fields.IntegerField(required=True) + duration: int = fields.IntegerField(default=10) + guild: int = fields.IntegerField(required=True) + reason: str = fields.StringField(required=True) + created_at: datetime = fields.DateTimeField(default=datetime.utcnow) @JARVIS_INST.register class Unban(Document): """Unban database object.""" - user = fields.IntegerField(required=True) - username = fields.StringField(required=True) - discrim = fields.IntegerField(required=True) - guild = fields.IntegerField(required=True) - admin = fields.IntegerField(required=True) - reason = fields.StringField(required=True) - created_at = fields.DateTimeField(default=datetime.utcnow) + user: int = fields.IntegerField(required=True) + username: str = fields.StringField(required=True) + discrim: int = fields.IntegerField(required=True) + guild: int = fields.IntegerField(required=True) + admin: int = fields.IntegerField(required=True) + reason: str = fields.StringField(required=True) + created_at: datetime = fields.DateTimeField(default=datetime.utcnow) @JARVIS_INST.register class Warning(Document): """Warning database object.""" - active = fields.BooleanField(default=True) - admin = fields.IntegerField(required=True) - user = fields.IntegerField(required=True) - guild = fields.IntegerField(required=True) - duration = fields.IntegerField(default=24) - reason = fields.StringField(required=True) - created_at = fields.DateTimeField(default=datetime.utcnow) + active: bool = fields.BooleanField(default=True) + admin: int = fields.IntegerField(required=True) + user: int = fields.IntegerField(required=True) + guild: int = fields.IntegerField(required=True) + duration: int = fields.IntegerField(default=24) + reason: str = fields.StringField(required=True) + created_at: datetime = fields.DateTimeField(default=datetime.utcnow) diff --git a/jarvis_core/db/models/twitter.py b/jarvis_core/db/models/twitter.py index 4782950..ca0a034 100644 --- a/jarvis_core/db/models/twitter.py +++ b/jarvis_core/db/models/twitter.py @@ -10,10 +10,10 @@ from jarvis_core.db import JARVIS_INST class TwitterAccount(Document): """Twitter Account object.""" - handle = fields.StringField(required=True) - twitter_id = fields.IntegerField(required=True) - last_tweet = fields.IntegerField(required=True) - last_sync = fields.DateTimeField(default=datetime.utcnow) + handle: str = fields.StringField(required=True) + twitter_id: int = fields.IntegerField(required=True) + last_tweet: int = fields.IntegerField(required=True) + last_sync: datetime = fields.DateTimeField(default=datetime.utcnow) class Meta: collection_name = "twitteraccount" @@ -23,13 +23,13 @@ class TwitterAccount(Document): class TwitterFollow(Document): """Twitter Follow object.""" - active = fields.BooleanField(default=True) - twitter_id = fields.IntegerField(required=True) - channel = fields.IntegerField(required=True) - guild = fields.IntegerField(required=True) - retweets = fields.BooleanField(default=True) - admin = fields.IntegerField(required=True) - created_at = fields.DateTimeField(default=datetime.utcnow) + active: bool = fields.BooleanField(default=True) + twitter_id: int = fields.IntegerField(required=True) + channel: int = fields.IntegerField(required=True) + guild: int = fields.IntegerField(required=True) + retweets: bool = fields.BooleanField(default=True) + admin: int = fields.IntegerField(required=True) + created_at: datetime = fields.DateTimeField(default=datetime.utcnow) class Meta: collection_name = "twitterfollow"