fix: stringify im admin json fields

This commit is contained in:
richjohnrambo
2026-08-28 13:34:40 +08:00
parent d7578efa2b
commit 6e08013fd1
@@ -120,9 +120,8 @@ func normalizeImAdminRow(row map[string]any, aliases map[string]string) {
}
func normalizeImAdminValue(target string, value any) any {
if target != "credentials" {
return value
}
switch target {
case "credentials":
items, ok := value.([]any)
if !ok {
return value
@@ -151,6 +150,26 @@ func normalizeImAdminValue(target string, value any) any {
parts = append(parts, text)
}
return strings.Join(parts, ", ")
case "profileJson", "trustedJson", "accessJson":
return normalizeImAdminJSONString(value)
default:
return value
}
}
func normalizeImAdminJSONString(value any) string {
switch v := value.(type) {
case nil:
return ""
case string:
return v
default:
encoded, err := json.Marshal(v)
if err != nil {
return ""
}
return string(encoded)
}
}
func snakeToLowerCamel(s string) string {