Coverage for / usr / local / lib / python3.14 / site-packages / twinpad_backend / responses.py: 100%
10 statements
« prev ^ index » next coverage.py v7.13.5, created at 2026-03-26 16:13 +0000
« prev ^ index » next coverage.py v7.13.5, created at 2026-03-26 16:13 +0000
1from typing import TypeVar, Generic
2from pydantic import BaseModel
4DataT = TypeVar("DataT")
7class ListResponse(BaseModel, Generic[DataT]):
8 limit: int
9 offset: int
10 sort_by: str
11 items: list[DataT]
12 total: int
14 def to_dict(self, exclude=None):
15 """Excludes field on items"""
16 if exclude is None:
17 exclude = {}
18 dict_ = self.model_dump(exclude={"items"})
19 dict_["items"] = [i.to_dict(exclude=exclude) for i in self.items]
20 return dict_