refactor: move supporters loading to separate API endpoint

- Add SupportersHandler in misc_handlers.py to serve /api/lm/supporters
- Register new endpoint in misc_route_registrar.py
- Remove supporters from page load template context in model_handlers.py
- Create supportersService.js for frontend data fetching
- Update Header.js to fetch supporters when support modal opens
- Modify support_modal.html to use client-side rendering

This change improves page load performance by loading supporters data
on-demand instead of during initial page render.
This commit is contained in:
Will Miao
2026-02-28 20:14:20 +08:00
parent 77a2215e62
commit 78b55d10ba
20 changed files with 1206 additions and 89 deletions

View File

@@ -29,6 +29,7 @@ from .handlers.misc_handlers import (
NodeRegistry,
NodeRegistryHandler,
SettingsHandler,
SupportersHandler,
TrainedWordsHandler,
UsageStatsHandler,
build_service_registry_adapter,
@@ -119,6 +120,7 @@ class MiscRoutes:
metadata_provider_factory=self._metadata_provider_factory,
)
custom_words = CustomWordsHandler()
supporters = SupportersHandler()
return self._handler_set_factory(
health=health,
@@ -132,6 +134,7 @@ class MiscRoutes:
metadata_archive=metadata_archive,
filesystem=filesystem,
custom_words=custom_words,
supporters=supporters,
)