Skip to content

Commit acef022

Browse files
expose to ProjectGet
1 parent 48ec669 commit acef022

File tree

2 files changed

+21
-2
lines changed

2 files changed

+21
-2
lines changed

packages/models-library/src/models_library/api_schemas_webserver/projects.py

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,14 @@
2626
from ..emails import LowerCaseEmailStr
2727
from ..folders import FolderID
2828
from ..groups import GroupID
29-
from ..projects import ClassifierID, DateTimeStr, NodesDict, ProjectID
29+
from ..projects import (
30+
ClassifierID,
31+
DateTimeStr,
32+
NodesDict,
33+
ProjectID,
34+
ProjectTemplateType,
35+
ProjectType,
36+
)
3037
from ..projects_access import AccessRights, GroupIDStr
3138
from ..projects_state import ProjectState
3239
from ..utils._original_fastapi_encoders import jsonable_encoder
@@ -106,6 +113,9 @@ class ProjectGet(OutputSchema):
106113
description: str
107114
thumbnail: HttpUrl | Literal[""]
108115

116+
type: ProjectType
117+
template_type: ProjectTemplateType | None
118+
109119
workbench: NodesDict
110120

111121
prj_owner: LowerCaseEmailStr
@@ -153,6 +163,8 @@ def _update_json_schema_extra(schema: JsonDict) -> None:
153163
"name": "My Project",
154164
"description": "This is a sample project",
155165
"thumbnail": "https://example.com/thumbnail.png",
166+
"type": "STANDARD",
167+
"template_type": None,
156168
"workbench": {},
157169
"prj_owner": "[email protected]",
158170
"access_rights": {},

packages/models-library/src/models_library/projects.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"""
44

55
from datetime import datetime
6-
from enum import Enum
6+
from enum import Enum, auto
77
from typing import Annotated, Any, Final, TypeAlias
88
from uuid import UUID
99

@@ -25,6 +25,7 @@
2525
empty_str_to_none_pre_validator,
2626
none_to_empty_str_pre_validator,
2727
)
28+
from .utils.enums import StrAutoEnum
2829

2930
ProjectID: TypeAlias = UUID
3031
CommitID: TypeAlias = int
@@ -52,6 +53,12 @@ class ProjectType(str, Enum):
5253
STANDARD = "STANDARD"
5354

5455

56+
class ProjectTemplateType(StrAutoEnum):
57+
TEMPLATE = auto()
58+
TUTORIAL = auto()
59+
HYPERTOOL = auto()
60+
61+
5562
class BaseProjectModel(BaseModel):
5663
# Description of the project
5764
uuid: Annotated[

0 commit comments

Comments
 (0)