23 lines
499 B
Python
23 lines
499 B
Python
import uuid
|
|
from typing import Optional, Union, List
|
|
|
|
import pydantic
|
|
from pydantic import Field
|
|
|
|
from core.models.base import BaseModel, BaseCUAt
|
|
|
|
|
|
class ModuleModel(pydantic.BaseModel):
|
|
title: str
|
|
icon: str
|
|
description: Optional[str]
|
|
url: Optional[str]
|
|
|
|
|
|
class RoleModel(BaseModel, BaseCUAt):
|
|
id: Optional[Union[uuid.UUID, str]] = Field(alias='_id')
|
|
title: str
|
|
f_routes: Optional[List[str]]
|
|
units: Optional[List[uuid.UUID]]
|
|
modules: Optional[List[ModuleModel]]
|