app.models#

app.models.acmgseqvar#

Models for ACMG sequence variant.

class app.models.acmgseqvar.AcmgSeqVar(**kwargs)#

ACMG sequence variant.

acmg_rank: AcmgRank#

ACMG criteria.

id: Mapped[UUID]#

UUID of the ACMG sequence variant.

seqvar_name: str#

Sequence variant ID.

user: UUID#

User who created the ACMG sequence variant.

app.models.adminmsg#

Models for admin messages.

class app.models.adminmsg.AdminMessage(**kwargs)#

Message to be set by administrators.

We currently only support read-only access, must be created via admin interface.

active_start: datetime#

When to start displaying the message.

active_stop: datetime#

When to stop displaying the message.

enabled#

Whether the message is enabled at all.

id: Mapped[UUID]#

UUID of the message.

text: str#

The message’s text.

title: str#

Message title.

app.models.bookmark#

Models for bookmarks of variants and genes.

class app.models.bookmark.Bookmark(**kwargs)#

Bookmark of a variant or gene.

id: Mapped[UUID]#

UUID of the bookmark.

obj_id: str#

ID of the bookmarked object.

obj_type: BookmarkTypes#

Type of the bookmarked object.

user: UUID#

User who created the bookmark.

app.models.caseinfo#

Models for case information.

class app.models.caseinfo.CaseInfo(**kwargs)#

Case information.

affected_family_members: bool#

Affected family members of the patient.

age_of_onset_month: int#

Age of onset of the patient.

diseases: list[DiseaseTerm]#

Diseases of the patient.

ethnicity: Ethnicity#

Ethnicity of the patient.

family_segregation: bool#

Family segregation of the patient.

hpo_terms: list[HpoTerm]#

HPO terms of the patient.

id: Mapped[UUID]#

UUID of the case information.

inheritance: Inheritance#

Inheritance of the patient.

pseudonym: str#

Pseudonym of the patient.

sex: Sex#

Sex of the patient.

user: UUID#

User who created the case information.

zygosity: Zygosity#

Zygosity of the patient.

app.models.user#

class app.models.user.OAuthAccount(**kwargs)#

Base OAuth account table definition.

access_token: Mapped[str]#
account_email: Mapped[str]#
account_id: Mapped[str]#
expires_at: Mapped[int | None]#
id: Mapped[UUID_ID]#
oauth_name: Mapped[str]#
refresh_token: Mapped[str | None]#
user_id: UUID_ID#
app.models.user.TOKEN_SIZE = 65536#

Long tokens – 64kbytes should be enough for everyone

class app.models.user.User(**kwargs)#
email: Mapped[str]#
hashed_password: Mapped[str]#
id: Mapped[UUID_ID]#
is_active: Mapped[bool]#
is_superuser: Mapped[bool]#
is_verified: Mapped[bool]#