Files
Atlas/internal/settings/keys.go
T
renjue 6e6b899071
CI / docker (push) Successful in 7m37s
实现 Atlas AI 平台一期能力并完成品牌化改造。
引入用户端对话/生图与管理端 Provider 配置,统一 invoke 编排、Gateway、请求日志与模型管理;前端按设计规范拆分布局,Go module 更名为 github.com/rose_cat707/Atlas;生图长任务 SSE 推送;管理端登录防爆破;协议与服务类型联动;Replicate 模型同步修复;用户端创作台 UI 重构;管理端创作历史替代请求日志。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 22:13:52 +08:00

48 lines
1.1 KiB
Go

package settings
const (
KeyAppName = "app_name"
KeyAPIPort = "api_port"
KeyAdminPassword = "admin_password"
KeyAuthEnabled = "auth_enabled"
KeyUILocale = "ui_locale"
KeyFileSignSecret = "file_sign_secret"
)
var Defaults = map[string]string{
KeyAppName: "Atlas",
KeyAPIPort: "8080",
KeyAdminPassword: "admin",
KeyAuthEnabled: "true",
KeyUILocale: "zh-CN",
KeyFileSignSecret: "change-me-atlas-file-sign",
}
// Display returns settings safe for GET responses (masks secrets).
func Display(raw map[string]string) map[string]string {
out := make(map[string]string, len(raw))
for k, v := range raw {
out[k] = v
}
if v, ok := out[KeyAdminPassword]; ok && v != "" {
out[KeyAdminPassword] = "******"
}
return out
}
// NormalizeSubmit validates and normalizes settings from PUT requests.
func NormalizeSubmit(in map[string]string) (map[string]string, error) {
out := make(map[string]string)
for k, v := range in {
switch k {
case KeyAppName, KeyAPIPort, KeyAuthEnabled, KeyUILocale:
out[k] = v
case KeyAdminPassword:
if v != "" && v != "******" {
out[k] = v
}
}
}
return out, nil
}