__init__.py 603 B

12345678910111213141516171819202122
  1. from mautrix.util.async_db import Database
  2. import sqlite3
  3. import uuid
  4. from .upgrade import upgrade_table
  5. from .user import User
  6. from .puppet import Puppet
  7. from .portal import Portal
  8. from .message import Message
  9. from .reaction import Reaction
  10. def init(db: Database) -> None:
  11. for table in (User, Puppet, Portal, Message, Reaction):
  12. table.db = db
  13. # TODO should this be in mautrix-python?
  14. sqlite3.register_adapter(uuid.UUID, lambda u: str(u))
  15. sqlite3.register_converter("UUID", lambda b: uuid.UUID(b))
  16. __all__ = ["upgrade_table", "init", "User", "Puppet", "Portal", "Message", "Reaction"]