ForcePilot/backend/package/yuxi/channel/application/dto/plugin_dto.py

40 lines
723 B
Python
Raw Normal View History

from __future__ import annotations
from pydantic import BaseModel
class PluginSummaryDTO(BaseModel):
plugin_id: str
name: str
version: str
channel_type: str
status: str
source: str
is_configured: bool
class PluginDetailDTO(BaseModel):
plugin_id: str
name: str
version: str
channel_type: str
status: str
source: str
is_configured: bool
capabilities: dict
config_schema: dict | None = None
registered_at: str | None = None
error: str | None = None
class PluginListDTO(BaseModel):
plugins: list[PluginSummaryDTO]
total: int
class ReloadResultDTO(BaseModel):
plugin_id: str
old_version: str
new_version: str
success: bool