main
py 19 lines 712 Bytes
Raw
1 from helpers.api import ApiHandler, Request, Response
2 from helpers.extension import call_extensions_async
3
4
5 class GetBanners(ApiHandler):
6 """
7 API endpoint for Welcome Screen banners.
8 Add checks as extension scripts in python/extensions/banners/ or usr/extensions/banners/
9 """
10
11 async def process(self, input: dict, request: Request) -> dict | Response:
12 banners = input.get("banners", [])
13 frontend_context = input.get("context", {})
14
15 # Banners array passed by reference - extensions append directly to it
16 await call_extensions_async("banners", agent=None, banners=banners, frontend_context=frontend_context)
17
18 return {"banners": banners}
19