Coverage for apps/kwai-api/src/kwai_api/v1/auth/schemas/user_invitation.py: 100%
12 statements
« prev ^ index » next coverage.py v7.11.0, created at 2024-01-01 00:00 +0000
« prev ^ index » next coverage.py v7.11.0, created at 2024-01-01 00:00 +0000
1"""Schemas for a user invitation resource."""
3from kwai_core.json_api import Meta
4from pydantic import BaseModel, Field
6from kwai_api.schemas.resources import UserInvitationResourceIdentifier
9class UserInvitationAttributes(BaseModel):
10 """Attributes of a user invitation JSON:API resource."""
12 email: str
13 first_name: str
14 last_name: str
15 remark: str = ""
16 mailed_at: str | None = None
17 expired_at: str | None = None
18 confirmed_at: str | None = None
19 revoked: bool
22class UserInvitationResource(UserInvitationResourceIdentifier):
23 """A JSON:API resource of a user invitation."""
25 attributes: UserInvitationAttributes
28class UserInvitationDocument(BaseModel):
29 """A JSON:API document for one or more user invitations."""
31 data: UserInvitationResource
34class UserInvitationsDocument(BaseModel):
35 """A JSON:API document for multiple user invitations."""
37 meta: Meta
38 data: list[UserInvitationResource] = Field(default_factory=list)