diff --git a/flask_discord/models/base.py b/flask_discord/models/base.py new file mode 100644 index 0000000..c40689e --- /dev/null +++ b/flask_discord/models/base.py @@ -0,0 +1,15 @@ +from abc import ABC + + +class DiscordModelsBase(ABC): + + def to_json(self): + """A utility method which returns raw payload object as it was received from discord. + + Returns + ------- + dict + A dict representing raw payload object received from discord. + + """ + return self._payload diff --git a/flask_discord/models/connections.py b/flask_discord/models/connections.py index 5a10284..17f4c6c 100644 --- a/flask_discord/models/connections.py +++ b/flask_discord/models/connections.py @@ -1,7 +1,9 @@ +from .base import DiscordModelsBase + from .user import User -class Integration(object): +class Integration(DiscordModelsBase): """"Class representing discord server integrations. Attributes diff --git a/flask_discord/models/guild.py b/flask_discord/models/guild.py index 1bbb319..f1b995e 100644 --- a/flask_discord/models/guild.py +++ b/flask_discord/models/guild.py @@ -1,7 +1,9 @@ +from .base import DiscordModelsBase + from .. import configs -class Guild(object): +class Guild(DiscordModelsBase): """Class representing discord Guild the user is part of. Attributes diff --git a/flask_discord/models/user.py b/flask_discord/models/user.py index 8f1f58a..bc061ed 100644 --- a/flask_discord/models/user.py +++ b/flask_discord/models/user.py @@ -1,7 +1,9 @@ +from .base import DiscordModelsBase + from .. import configs -class User(object): +class User(DiscordModelsBase): """Class representing Discord User. Attributes @@ -65,16 +67,6 @@ class User(object): """A boolean representing if avatar of user is animated. Meaning user has GIF avatar.""" return self.avatar_hash.startswith("a_") - def to_json(self): - """A utility method which returns raw user object as it was returned from discord. - - Returns - ------- - dict - A dict of user's document. - """ - return self._payload - class Bot(User): """Class representing the client user itself.