Newer
Older
class LoginData(BaseModel):
email: str
password: str
class RegisterData(BaseModel):
email: str
password: str
nickname: str
is_tutor: bool
email: str
nickname: str
ui_language: str | None
home_language: str | None
target_language: str | None
email: str
nickname: str | None = None
password: str
type: int = UserType.STUDENT.value
ui_language: str | None = None
home_language: str | None = None
target_language: str | None = None
calcom_link: str | None = None
class UserUpdate(BaseModel):
email: str | None = None
nickname: str | None = None
password: str | None = None
type: int | None = None
availability: int | None = None
is_active: bool | None = None
ui_language: str | None = None
home_language: str | None = None
target_language: str | None = None
calcom_link: str | None = None
class ContactCreate(BaseModel):
user_id: int
class Config:
from_attributes = True
q1: float | None = None
q2: float | None = None
q3: float | None = None
q4: float | None = None
class SessionUpdate(BaseModel):
is_active: bool | None = None
class SessionSatisfyCreate(BaseModel):
usefullness: int
easiness: int
remarks: str | None = None
class SessionBookingCreate(BaseModel):
start_time: NaiveDatetime
end_time: NaiveDatetime
class MessageFeedback(BaseModel):
id: int
message_id: int
start: int
end: int
content: str
class Config:
from_attributes = True
def to_dict(self):
return {
"id": self.id,
"message_id": self.message_id,
"start": self.start,
"end": self.end,
"content": self.content,
"date": self.date.isoformat(),
}
class MessageFeedbackCreate(BaseModel):
start: int
end: int
content: str | None = None
reply_to_message_id: str | None = None
def to_dict(self):
return {
"id": self.id,
"content": self.content,
"user_id": self.user_id,
"session_id": self.session_id,
"created_at": self.created_at.isoformat(),
"reply_to_message_id": self.reply_to_message_id,
"feedbacks": [feedback.to_dict() for feedback in self.feedbacks],
class MessageMetadataCreate(BaseModel):
message: str
date: int
class Config:
from_attributes = True
reply_to_message_id: str | None = None
class TestTypingEntryCreate(BaseModel):
exerciceId: int
position: int
downtime: int
uptime: int
keyCode: int
keyValue: str
class TestTypingCreate(BaseModel):
class TestVocabularyCreate(BaseModel):
content: str
class CalComWebhook(BaseModel):
triggerEvent: str
id: int | None = None
question: str
correct: int
option1: str | None = None
option2: str | None = None
option3: str | None = None
option4: str | None = None
option5: str | None = None
option6: str | None = None
option7: str | None = None
option8: str | None = None
question: str
correct: int
option1: str | None = None
option2: str | None = None
option3: str | None = None
option4: str | None = None
option5: str | None = None
option6: str | None = None
option7: str | None = None
option8: str | None = None
questions: list[SurveyQuestionCreate] = []
class SurveyGroup(BaseModel):
id: int
title: str
class SurveyGroupAddQuestion(BaseModel):
question_id: int
groups: list[SurveyGroupCreate] = []
class SurveySurveyAddGroup(BaseModel):
group_id: int
Delphine van Rossum
a validé
code: str
Delphine van Rossum
a validé
uid: int | None = None
survey_id: int
group_id: int
class SurveyResponse(BaseModel):
id: int
Delphine van Rossum
a validé
code: str
Delphine van Rossum
a validé
uid: int | None = None
survey_id: int
group_id: int
Delphine van Rossum
a validé
class SurveyResponseInfoCreate(BaseModel):
sid: str
birthyear: int
gender: str
primary_language: str
education: str
class SurveyResponseInfo(BaseModel):
id: int
sid: str
birthyear: int
gender: str
primary_language: str
education: str
class Study(BaseModel):
id: int
title: str
description: str
chat_duration: int
class StudyCreate(BaseModel):
title: str
description: str