# import asyncio # import nonebot # from fastapi import APIRouter, FastAPI # from nonebot.adapters.onebot.v11 import Bot, MessageEvent # from nonebot.log import default_filter, default_format # from nonebot.matcher import Matcher # from nonebot.message import run_preprocessor # from nonebot.typing import T_State # from configs.config import Config as gConfig # from services.log import logger, logger_ # from utils.manager import plugins2settings_manager # from .api.base_info import router as base_info_routes # from .api.group import router as group_routes # from .api.logs import router as ws_routes # from .api.logs.log_manager import LOG_STORAGE # from .api.plugins import router as plugin_routes # from .api.request import router as request_routes # from .api.system import router as system_routes # # from .api.g import * # from .auth import router as auth_router # driver = nonebot.get_driver() # gConfig.add_plugin_config("web-ui", "username", "admin", name="web-ui", help_="前端管理用户名") # gConfig.add_plugin_config("web-ui", "password", None, name="web-ui", help_="前端管理密码") # BaseApiRouter = APIRouter(prefix="/zhenxun/api") # BaseApiRouter.include_router(auth_router) # BaseApiRouter.include_router(plugin_routes) # BaseApiRouter.include_router(group_routes) # BaseApiRouter.include_router(request_routes) # BaseApiRouter.include_router(system_routes) # BaseApiRouter.include_router(base_info_routes) # @driver.on_startup # def _(): # loop = asyncio.get_running_loop() # def log_sink(message: str): # loop.create_task(LOG_STORAGE.add(message.rstrip("\n"))) # logger_.add(log_sink, colorize=True, filter=default_filter, format=default_format) # app: FastAPI = nonebot.get_app() # app.include_router(BaseApiRouter) # app.include_router(ws_routes) # logger.info("API启动成功", "Web UI")