add get character by series endpoint

This commit is contained in:
sn0w
2025-10-30 21:14:05 +01:00
parent ea1b9aa344
commit c828b0a29e
2 changed files with 19 additions and 0 deletions
+9
View File
@@ -188,6 +188,15 @@ async def set_visible_series(request):
return web.json_response({"status": "ok"})
@PromptServer.instance.routes.get(f"{API_PREFIX}/series/{{series}}/characters")
async def get_characters_by_series_endpoint(request):
series = request.match_info.get("series", "")
if not series:
return web.json_response({"error": "Series name is required"}, status=400)
characters = CharacterLoader.get_characters_by_series(series)
return web.json_response({"series": series, "characters": characters})
@PromptServer.instance.routes.get(f"{API_PREFIX}/series_selector")
async def serve_series_selector(request):
html = """
+10
View File
@@ -633,6 +633,16 @@ class CharacterLoader:
else:
return characters
@classmethod
def get_characters_by_series(cls, series_name):
"""Get all characters in a specific series"""
characters = cls.get_character_dict()
series_characters = {}
for name, char_data in characters.items():
if cls.get_character_series(char_data).lower() == series_name.lower():
series_characters[name] = char_data
return series_characters
API_PREFIX = "/sn0w"