44
55- LeagueofComicGeeks
66"""
7+
78from __future__ import annotations
89
910__all__ = ["LeagueofComicGeeks" ]
1920from himon import __version__
2021from himon .exceptions import AuthenticationError , ServiceError
2122from himon .schemas .comic import Comic
22- from himon .schemas .search_result import SearchResult
23+ from himon .schemas .generic import GenericComic
2324from himon .schemas .series import Series
2425from himon .sqlite_cache import SQLiteCache
2526
@@ -68,9 +69,7 @@ def __init__(
6869 @sleep_and_retry
6970 @limits (calls = 20 , period = MINUTE )
7071 def _perform_get_request (
71- self : LeagueofComicGeeks ,
72- url : str ,
73- params : dict [str , str ] | None = None ,
72+ self : LeagueofComicGeeks , url : str , params : dict [str , str ] | None = None
7473 ) -> dict [str , Any ]:
7574 """Make GET request to League of Comic Geeks.
7675
@@ -153,9 +152,7 @@ def _get_request(
153152 @sleep_and_retry
154153 @limits (calls = 20 , period = MINUTE )
155154 def _str_get_request (
156- self : LeagueofComicGeeks ,
157- endpoint : str ,
158- params : dict [str , str ] | None = None ,
155+ self : LeagueofComicGeeks , endpoint : str , params : dict [str , str ] | None = None
159156 ) -> str :
160157 """Make GET request to League of Comic Geeks, expecting a str response.
161158
@@ -211,7 +208,7 @@ def generate_access_token(self: LeagueofComicGeeks) -> str:
211208 self .headers ["X-API-KEY" ] = self .client_secret
212209 return self ._str_get_request ("/authorize/format/json" )
213210
214- def search (self : LeagueofComicGeeks , search_term : str ) -> list [SearchResult ]:
211+ def search (self : LeagueofComicGeeks , search_term : str ) -> list [GenericComic ]:
215212 """Request a list of search results.
216213
217214 Args:
@@ -225,7 +222,7 @@ def search(self: LeagueofComicGeeks, search_term: str) -> list[SearchResult]:
225222 try :
226223 self .headers ["X-API-KEY" ] = self .access_token
227224 results = self ._get_request ("/search/format/json" , params = {"query" : search_term })
228- adapter = TypeAdapter (List [SearchResult ])
225+ adapter = TypeAdapter (List [GenericComic ])
229226 return adapter .validate_python (results )
230227 except ValidationError as err :
231228 raise ServiceError (err ) from err
@@ -244,10 +241,7 @@ def get_series(self: LeagueofComicGeeks, series_id: int) -> Series:
244241 """
245242 try :
246243 self .headers ["X-API-KEY" ] = self .access_token
247- result = self ._get_request (
248- "/series/format/json" ,
249- params = {"series_id" : str (series_id )},
250- )
244+ result = self ._get_request ("/series/format/json" , params = {"series_id" : str (series_id )})
251245 if "details" in result :
252246 result = result ["details" ]
253247 adapter = TypeAdapter (Series )
@@ -269,10 +263,7 @@ def get_comic(self: LeagueofComicGeeks, comic_id: int) -> Comic:
269263 """
270264 try :
271265 self .headers ["X-API-KEY" ] = self .access_token
272- result = self ._get_request (
273- "/comic/format/json" ,
274- params = {"comic_id" : str (comic_id )},
275- )
266+ result = self ._get_request ("/comic/format/json" , params = {"comic_id" : str (comic_id )})
276267 adapter = TypeAdapter (Comic )
277268 return adapter .validate_python (result )
278269 except ValidationError as err :
0 commit comments