bookwyrm/bookwyrm/models/__init__.py

53 lines
1.6 KiB
Python
Raw Normal View History

2021-03-08 16:49:10 +00:00
""" bring all the models into the app namespace """
import inspect
import sys
2020-12-22 18:28:04 +00:00
from .book import Book, Work, Edition, BookDataModel
from .author import Author
2022-01-09 22:21:13 +00:00
from .link import Link, FileLink, LinkDomain
2020-09-17 20:09:11 +00:00
from .connector import Connector
2020-03-07 06:56:44 +00:00
from .shelf import Shelf, ShelfBook
2021-01-31 05:00:36 +00:00
from .list import List, ListItem
from .status import Status, GeneratedNote, Comment, Quotation
from .status import Review, ReviewRating
from .status import Boost
from .attachment import Image
from .favorite import Favorite
from .readthrough import ReadThrough, ProgressUpdate, ProgressMode
from .user import User, KeyPair
from .annual_goal import AnnualGoal
from .relationship import UserFollows, UserFollowRequest, UserBlocks
from .report import Report, ReportAction
2020-09-17 20:09:11 +00:00
from .federated_server import FederatedServer
from .group import Group, GroupMember, GroupMemberInvitation
2021-09-23 21:49:54 +00:00
from .import_job import ImportJob, ImportItem
from .bookwyrm_import_job import BookwyrmImportJob
from .bookwyrm_export_job import BookwyrmExportJob
from .move import MoveUser
2022-02-26 21:38:45 +00:00
from .site import SiteSettings, Theme, SiteInvite
2021-09-08 22:08:22 +00:00
from .site import PasswordReset, InviteRequest
from .announcement import Announcement
2022-02-24 20:15:08 +00:00
from .antispam import EmailBlocklist, IPBlocklist, AutoMod, automod_task
from .notification import Notification, NotificationType
2021-09-22 16:17:14 +00:00
from .hashtag import Hashtag
cls_members = inspect.getmembers(sys.modules[__name__], inspect.isclass)
2021-03-08 16:49:10 +00:00
activity_models = {
c[1].activity_serializer.__name__: c[1]
for c in cls_members
if hasattr(c[1], "activity_serializer")
}
2020-12-30 21:14:16 +00:00
status_models = [
2021-03-08 16:49:10 +00:00
c.__name__ for (_, c) in activity_models.items() if issubclass(c, Status)
]