mirror of
https://github.com/jxxghp/MoviePilot.git
synced 2026-09-06 16:07:01 +08:00
perf(startup): reduce readiness work (#6341)
This commit is contained in:
@@ -0,0 +1,84 @@
|
||||
from typing import NamedTuple
|
||||
|
||||
from fastapi import APIRouter
|
||||
|
||||
from app.api.endpoints import (
|
||||
agent,
|
||||
anilist,
|
||||
anthropic,
|
||||
auth,
|
||||
bangumi,
|
||||
dashboard,
|
||||
discover,
|
||||
douban,
|
||||
download,
|
||||
history,
|
||||
llm,
|
||||
login,
|
||||
mcp,
|
||||
media,
|
||||
mediaserver,
|
||||
message,
|
||||
mfa,
|
||||
music,
|
||||
notification,
|
||||
openai,
|
||||
plugin,
|
||||
recommend,
|
||||
search,
|
||||
site,
|
||||
storage,
|
||||
subscribe,
|
||||
system,
|
||||
tmdb,
|
||||
torrent,
|
||||
transfer,
|
||||
user,
|
||||
webhook,
|
||||
workflow,
|
||||
)
|
||||
|
||||
|
||||
class RouterSpec(NamedTuple):
|
||||
"""声明一个 v1 端点路由器及其公开路径元数据。"""
|
||||
|
||||
router: APIRouter # 原始端点路由器
|
||||
prefix: str # 相对 v1 根路径的前缀
|
||||
tags: tuple[str, ...] # 追加到端点 OpenAPI 操作的标签
|
||||
|
||||
|
||||
API_V1_ROUTER_SPECS: tuple[RouterSpec, ...] = (
|
||||
RouterSpec(auth.router, "/auth", ("auth",)),
|
||||
RouterSpec(login.router, "/login", ("login",)),
|
||||
RouterSpec(user.router, "/user", ("user",)),
|
||||
RouterSpec(mfa.router, "/mfa", ("mfa",)),
|
||||
RouterSpec(site.router, "/site", ("site",)),
|
||||
RouterSpec(message.router, "/message", ("message",)),
|
||||
RouterSpec(agent.router, "/message/agent", ("agent",)),
|
||||
RouterSpec(webhook.router, "/webhook", ("webhook",)),
|
||||
RouterSpec(subscribe.router, "/subscribe", ("subscribe",)),
|
||||
RouterSpec(music.router, "/music", ("music",)),
|
||||
RouterSpec(media.router, "/media", ("media",)),
|
||||
RouterSpec(search.router, "/search", ("search",)),
|
||||
RouterSpec(douban.router, "/douban", ("douban",)),
|
||||
RouterSpec(tmdb.router, "/tmdb", ("tmdb",)),
|
||||
RouterSpec(history.router, "/history", ("history",)),
|
||||
RouterSpec(system.router, "/system", ("system",)),
|
||||
RouterSpec(notification.router, "/notification", ("notification",)),
|
||||
RouterSpec(llm.router, "/llm", ("llm",)),
|
||||
RouterSpec(plugin.router, "/plugin", ("plugin",)),
|
||||
RouterSpec(download.router, "/download", ("download",)),
|
||||
RouterSpec(dashboard.router, "/dashboard", ("dashboard",)),
|
||||
RouterSpec(storage.router, "/storage", ("storage",)),
|
||||
RouterSpec(transfer.router, "/transfer", ("transfer",)),
|
||||
RouterSpec(mediaserver.router, "/mediaserver", ("mediaserver",)),
|
||||
RouterSpec(bangumi.router, "/bangumi", ("bangumi",)),
|
||||
RouterSpec(anilist.router, "/anilist", ("anilist",)),
|
||||
RouterSpec(discover.router, "/discover", ("discover",)),
|
||||
RouterSpec(recommend.router, "/recommend", ("recommend",)),
|
||||
RouterSpec(workflow.router, "/workflow", ("workflow",)),
|
||||
RouterSpec(torrent.router, "/torrent", ("torrent",)),
|
||||
RouterSpec(mcp.router, "/mcp", ("mcp",)),
|
||||
RouterSpec(openai.router, "/openai/v1", ("openai",)),
|
||||
RouterSpec(anthropic.router, "/anthropic/v1", ("anthropic",)),
|
||||
)
|
||||
Reference in New Issue
Block a user