from fastapi import APIRouter, Depends from auth.models import TokenPayload from auth.dependencies import require_permission from settings.models import MelodySettings, MelodySettingsUpdate from settings import service router = APIRouter(prefix="/api/settings", tags=["settings"]) @router.get("/melody", response_model=MelodySettings) async def get_melody_settings( _user: TokenPayload = Depends(require_permission("melodies", "view")), ): return service.get_melody_settings() @router.put("/melody", response_model=MelodySettings) async def update_melody_settings( body: MelodySettingsUpdate, _user: TokenPayload = Depends(require_permission("melodies", "edit")), ): return service.update_melody_settings(body)