|
26 | 26 | from superannotate_schemas.schemas.enums import BaseImageRoleEnum |
27 | 27 | from superannotate_schemas.schemas.enums import VectorAnnotationTypeEnum |
28 | 28 | from superannotate_schemas.schemas.enums import AnnotationStatusEnum |
| 29 | +from superannotate_schemas.schemas.enums import ClassTypeEnum |
29 | 30 | from superannotate_schemas.schemas.constances import DATE_REGEX |
30 | 31 | from superannotate_schemas.schemas.constances import DATE_TIME_FORMAT_ERROR_MESSAGE |
31 | 32 | from superannotate_schemas.schemas.constances import POINT_LABEL_VALUE_FORMAT_ERROR_MESSAGE |
@@ -64,20 +65,14 @@ class AxisPoint(BaseModel): |
64 | 65 | class BaseAttribute(BaseModel): |
65 | 66 | id: Optional[StrictInt] |
66 | 67 | group_id: Optional[StrictInt] = Field(alias="groupId") |
67 | | - name: NotEmptyStr |
68 | | - group_name: NotEmptyStr = Field(alias="groupName") |
| 68 | + name: Optional[NotEmptyStr] |
| 69 | + group_name: Optional[NotEmptyStr] = Field(alias="groupName") |
69 | 70 |
|
70 | 71 |
|
71 | 72 | class Tag(BaseModel): |
72 | 73 | __root__: NotEmptyStr |
73 | 74 |
|
74 | 75 |
|
75 | | -class AttributeGroup(BaseModel): |
76 | | - name: NotEmptyStr |
77 | | - is_multiselect: Optional[bool] = Field(False) |
78 | | - attributes: List[BaseAttribute] |
79 | | - |
80 | | - |
81 | 76 | class BboxPoints(BaseModel): |
82 | 77 | x1: StrictNumber |
83 | 78 | x2: StrictNumber |
@@ -126,6 +121,12 @@ class BaseInstance(TrackableModel, TimedBaseModel): |
126 | 121 | class_name: Optional[NotEmptyStr] = Field(None, alias="className") |
127 | 122 |
|
128 | 123 |
|
| 124 | +class BaseInstanceTag(BaseInstance): |
| 125 | + type: ClassTypeEnum |
| 126 | + probability: Optional[StrictInt] = Field(100) |
| 127 | + attributes: Optional[List[BaseAttribute]] = Field(list()) |
| 128 | + |
| 129 | + |
129 | 130 | class BaseMetadata(BaseModel): |
130 | 131 | name: NotEmptyStr |
131 | 132 | url: Optional[StrictStr] |
@@ -220,15 +221,8 @@ class BaseVectorInstance(BaseImageAnnotationInstance): |
220 | 221 | tracking_id: Optional[str] = Field(alias="trackingId") |
221 | 222 | group_id: Optional[int] = Field(alias="groupId") |
222 | 223 |
|
223 | | -# |
224 | | -# class Metadata(BaseMetadata): |
225 | | -# name: NotEmptyStr |
226 | | -# status: Optional[AnnotationStatusEnum] |
227 | | -# pinned: Optional[StrictBool] |
228 | | -# is_predicted: Optional[StrictBool] = Field(None, alias="isPredicted") |
229 | | - |
230 | 224 |
|
231 | | -class PixelColor(BaseModel): |
| 225 | +class HexColor(BaseModel): |
232 | 226 | __root__: ColorType |
233 | 227 |
|
234 | 228 | @validator("__root__") |
|
0 commit comments