50 lines
1.3 KiB
Python
50 lines
1.3 KiB
Python
from __future__ import annotations
|
|
|
|
from pydantic import BaseModel, Field
|
|
|
|
from one_c_normalizer import MetadataObject
|
|
|
|
|
|
class NormalizedObjectDetail(BaseModel):
|
|
project_id: str | None = None
|
|
group_name: str
|
|
object: MetadataObject
|
|
|
|
|
|
class ModuleRoutineResponse(BaseModel):
|
|
name: str
|
|
kind: str
|
|
line_start: int | None = None
|
|
line_end: int | None = None
|
|
export: bool = False
|
|
calls_count: int = 0
|
|
queries_count: int = 0
|
|
writes_count: int = 0
|
|
calls: list[str] = Field(default_factory=list)
|
|
queries: list[str] = Field(default_factory=list)
|
|
writes: list[str] = Field(default_factory=list)
|
|
impact_level: str = "LOW"
|
|
impact_reasons: list[str] = Field(default_factory=list)
|
|
|
|
|
|
class ModuleSourceResponse(BaseModel):
|
|
name: str
|
|
qualified_name: str
|
|
module_role: str = "MODULE"
|
|
owner_qualified_name: str | None = None
|
|
owner_kind: str | None = None
|
|
object_part: str | None = None
|
|
form_name: str | None = None
|
|
form_qualified_name: str | None = None
|
|
source_path: str
|
|
source_text: str
|
|
routines_count: int = 0
|
|
routines: list[ModuleRoutineResponse] = Field(default_factory=list)
|
|
|
|
|
|
class BslCompletionItemResponse(BaseModel):
|
|
label: str
|
|
kind: str = "VALUE"
|
|
detail: str | None = None
|
|
insert_text: str | None = None
|