Phase 3: PluginWebMixin SDK + web plugin control panels

- New: sdk/plugin_web.py (PluginWebMixin: web pages, API routes, SSE)
- New: services/web_panel/routes/plugin_web.py (3 endpoints)
- New: plugins/example_plugin/dashboard.html (counter + SSE demo)
- Updated: example_plugin uses PluginWebMixin
- Tests: 28/28 passing
This commit is contained in:
AskaEth committed 2026-06-10 20:54:11 +08:00
1 parent c680fea8e0
commit e52f7f3566
7 files changed
+155 -12

No files matched your search

+2 -1
View File
@@ -5,7 +5,7 @@ import os
import logging
from pathlib import Path
from aiohttp import web
from .routes import auth, status, plugins, commands, logs, projects, proxy
from .routes import auth, status, plugins, commands, logs, projects, proxy, plugin_web
logger = logging.getLogger(__name__)
@@ -64,6 +64,7 @@ class WebPanelManager:
logs.setup_routes(app, self.base_path)
projects.setup_project_routes(app, self.sm)
proxy.setup_proxy_routes(app, self.sm)
plugin_web.setup_plugin_web_routes(app, self.sm)
# 注册日志广播
ls = self.sm.get_service("log")