feat: pydantic descriptors

This commit is contained in:
TheNoxium
2025-10-06 19:13:55 +05:00
parent 8e01072ff6
commit 46d9381905
28 changed files with 589 additions and 582 deletions

View File

@@ -0,0 +1,33 @@
from typing import Optional
from pydantic import BaseModel, Field
class TestNodeData(BaseModel):
"""
Pydantic модель для валидации данных узла test
"""
ps_id: Optional[int] = Field(default=None, description="ID процесса")
node_type: Optional[str] = Field(default=None, description="Тип узла")
class TestNodeLinks(BaseModel):
"""
Pydantic модель для валидации связей узла test
"""
# Test узел не имеет родительских связей, только исходящие
class TestNodeCoreSchemaData(BaseModel):
"""
Pydantic модель для данных портов узла test
"""
node_port_number: Optional[int] = Field(default=0, description="Номер порта для перехода по Связи Then (LINK)")
class TestNodeCoreSchema(BaseModel):
"""
Pydantic модель для схемы узла test
"""
ps_id: Optional[int] = Field(default=None, description="ID процесса")
node_type: Optional[str] = Field(default=None, description="Тип узла")
data: Optional[TestNodeCoreSchemaData] = Field(default=None, description="Данные узла")