alabuga/backend/app/schemas/onboarding.py
2025-09-25 04:55:43 +02:00

45 lines
940 B
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

"""Схемы для онбординга."""
from __future__ import annotations
from typing import Optional
from pydantic import BaseModel
class OnboardingSlideRead(BaseModel):
"""Отдельный слайд онбординга."""
id: int
order: int
title: str
body: str
media_url: Optional[str]
cta_text: Optional[str]
cta_link: Optional[str]
class Config:
from_attributes = True
class OnboardingStateRead(BaseModel):
"""Прогресс пользователя."""
last_completed_order: int
is_completed: bool
class OnboardingOverview(BaseModel):
"""Полный ответ с прогрессом и контентом."""
slides: list[OnboardingSlideRead]
state: OnboardingStateRead
next_order: int | None
class OnboardingCompleteRequest(BaseModel):
"""Запрос на фиксацию завершения шага."""
order: int