μ¬μ©μλ³ UI ν λ§(λΌμ΄νΈ/λ€ν¬/κ³ λλΉ/μΈνΌμ/μμ€ν /컀μ€ν )μ 컀μ€ν μμ νλ νΈλ₯Ό μ‘°νΒ·μμ ν©λλ€.
λΌμ°νΈ νμΌ:
backend/src/routes/themeSettings.js
컨νΈλ‘€λ¬ νμΌ:backend/src/controllers/themeSettings.js
μλΉμ€:backend/src/services/themeSettings.js
| λ©μλ | κ²½λ‘ | μ€λͺ | κΆν |
|---|---|---|---|
GET |
/api/theme-settings/settings |
ν λ§ μ€μ μ‘°ν(μμΌλ©΄ μμ±) | isLoggedIn |
PUT |
/api/theme-settings/settings |
ν λ§ μ€μ μμ | isLoggedIn |
GET /api/theme-settings/settings
{
"selectedTheme": "light",
"colors": {
"primaryColor": "#2563eb",
"backgroundColor": "#ffffff",
"componentColor": "#f8fafc",
"textColor": "#0f172a",
"accentColor": "#0ea5e9",
"successColor": "#16a34a",
"errorColor": "#dc2626"
}
}νμ© selectedTheme: light | dark | high-contrast | sepia | system | custom
PUT /api/theme-settings/settings
| νλ | νμ | νμ | μ€λͺ |
|---|---|---|---|
selectedTheme |
string |
X | μ νμ© κ° μ€ νλ |
colors |
object |
X | μλ ν€λ§ κ°±μ . κ°μ #RRGGBB |
μμ ν€: primaryColor, backgroundColor, componentColor, textColor, accentColor, successColor, errorColor
{
"selectedTheme": "custom",
"colors": {
"primaryColor": "#0f766e"
}
}μμ λ selectedThemeμ colorsλ₯Ό λ°νν©λλ€. μλͺ»λ ν
λ§/μμ νμμ΄λ©΄ 400μ
λλ€.