- Add ChromaticColor (17 Tailwind colors) and NeutralColor (5 grays) enums - Add ThemePreset table with flat color columns and unique name constraint - Add admin theme endpoints (CRUD + set default) at /api/v1/admin/theme - Add public theme listing at /api/v1/site/themes - Add user theme settings (PATCH /theme) with color snapshot on User model - User.color_* columns store per-user overrides; fallback to default preset then builtin - Initialize default theme preset in migration - Remove legacy defaultTheme/themes settings Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
40 lines
1.2 KiB
Python
40 lines
1.2 KiB
Python
from fastapi import APIRouter
|
|
|
|
from utils.conf import appmeta
|
|
|
|
from .admin import admin_router
|
|
|
|
from .callback import callback_router
|
|
from .directory import directory_router
|
|
from .download import download_router
|
|
from .file import router as file_router
|
|
from .object import object_router
|
|
from .share import share_router
|
|
from .trash import trash_router
|
|
from .site import site_router
|
|
from .slave import slave_router
|
|
from .user import user_router
|
|
from .vas import vas_router
|
|
from .webdav import webdav_router
|
|
|
|
router = APIRouter(prefix="/v1")
|
|
|
|
# [TODO] 如果是主机,导入下面的路由
|
|
|
|
if appmeta.mode == "master":
|
|
router.include_router(admin_router)
|
|
router.include_router(callback_router)
|
|
router.include_router(directory_router)
|
|
router.include_router(download_router)
|
|
router.include_router(file_router)
|
|
router.include_router(object_router)
|
|
router.include_router(share_router)
|
|
router.include_router(site_router)
|
|
router.include_router(trash_router)
|
|
router.include_router(user_router)
|
|
router.include_router(vas_router)
|
|
router.include_router(webdav_router)
|
|
elif appmeta.mode == "slave":
|
|
router.include_router(slave_router)
|
|
else:
|
|
raise ValueError("Config `mode` must in ['master', 'slave']") |