diff --git a/src/github_issues_import/models.py b/src/github_issues_import/models.py index ff6ffbb..1b3ef4d 100644 --- a/src/github_issues_import/models.py +++ b/src/github_issues_import/models.py @@ -1,8 +1,8 @@ from datetime import datetime from typing import Literal +from pydantic import AwareDatetime, ConfigDict, HttpUrl, NaiveDatetime from pydantic import BaseModel as PydanticBaseModel -from pydantic import ConfigDict, HttpUrl DEFAULT_CONFIG = ConfigDict( populate_by_name=True, @@ -16,12 +16,15 @@ class BaseModel(PydanticBaseModel): model_config = DEFAULT_CONFIG +type Datetime = datetime | AwareDatetime | NaiveDatetime + + class Issue(BaseModel): title: str body: str - created_at: datetime | None = None - updated_at: datetime | None = None - closed_at: datetime | None = None + created_at: Datetime | None = None + updated_at: Datetime | None = None + closed_at: Datetime | None = None assignee: str | None = None milestone: int | None = None closed: bool | None = None @@ -30,7 +33,7 @@ class Issue(BaseModel): class Comment(BaseModel): body: str - created_at: datetime | None = None + created_at: Datetime | None = None class IssueImportRequest(BaseModel):