36 lines
811 B
Python
36 lines
811 B
Python
from dataclasses import dataclass
|
|
from datetime import datetime
|
|
from enum import Enum
|
|
|
|
|
|
class ArticleTypeEnum(str, Enum):
|
|
summary = "summary" # take the input text, and summarise it
|
|
|
|
|
|
@dataclass
|
|
class Article:
|
|
id: str
|
|
article_type: ArticleTypeEnum
|
|
language: str # e.g. "fr"
|
|
target_complexity: str # e.g. "B1"
|
|
title: str
|
|
text: str
|
|
text_linguistic_data: dict | None
|
|
audio_key: str | None
|
|
created_at: datetime
|
|
published_at: datetime | None
|
|
deleted_at: datetime | None
|
|
|
|
|
|
class ArticleOwnershipRoleEnum(str, Enum):
|
|
owner = "owner" # Person for who the Article was created
|
|
|
|
|
|
@dataclass
|
|
class ArticleOwnership:
|
|
id: str
|
|
article_id: str
|
|
ownership_role: ArticleOwnershipRoleEnum
|
|
user_id: str
|
|
created_at: datetime
|
|
deleted_at: datetime | None
|