refactor(lbc): modernize typing and exports across client and models

This commit is contained in:
etienne-hd
2026-04-29 13:53:19 +02:00
parent ea459409c0
commit cbdf3d7821
16 changed files with 420 additions and 254 deletions

View File

@@ -1,8 +1,9 @@
from dataclasses import dataclass
from typing import List, Any
from typing import Any
from .ad import Ad
@dataclass
class Search:
total: int
@@ -13,14 +14,11 @@ class Search:
total_inactive: int
total_shippable: int
max_pages: int
ads: List[Ad]
ads: list[Ad]
@staticmethod
def _build(raw: dict, client: Any) -> "Search":
ads: List[Ad] = [
Ad._build(raw=ad, client=client)
for ad in raw.get("ads", [])
]
ads: list[Ad] = [Ad._build(raw=ad, client=client) for ad in raw.get("ads", [])]
return Search(
total=raw.get("total"),
@@ -32,4 +30,4 @@ class Search:
total_shippable=raw.get("total_shippable"),
max_pages=raw.get("max_pages"),
ads=ads,
)
)