Release / update-version (push) Has been cancelled
Release / build-frontend (push) Has been cancelled
Release / release (push) Has been cancelled
Release / sync-version-file (push) Has been cancelled
CI / shell (push) Canceled after 0s
CI / test (push) Canceled after 0s
CI / frontend (push) Canceled after 0s
CI / golangci-lint (push) Canceled after 0s
Security Scan / backend-security (push) Canceled after 0s
Security Scan / frontend-security (push) Canceled after 0s
33 lines
744 B
Go
33 lines
744 B
Go
package service
|
|
|
|
import "strings"
|
|
|
|
func normalizeGroupModelsListConfig(cfg GroupModelsListConfig) GroupModelsListConfig {
|
|
out := GroupModelsListConfig{Enabled: cfg.Enabled}
|
|
if len(cfg.Models) == 0 {
|
|
return out
|
|
}
|
|
|
|
seen := make(map[string]struct{}, len(cfg.Models))
|
|
out.Models = make([]string, 0, len(cfg.Models))
|
|
for _, model := range cfg.Models {
|
|
model = strings.TrimSpace(model)
|
|
if model == "" {
|
|
continue
|
|
}
|
|
if _, ok := seen[model]; ok {
|
|
continue
|
|
}
|
|
seen[model] = struct{}{}
|
|
out.Models = append(out.Models, model)
|
|
}
|
|
if len(out.Models) == 0 {
|
|
out.Models = nil
|
|
}
|
|
return out
|
|
}
|
|
|
|
func (g *Group) CustomModelsListEnabled() bool {
|
|
return g != nil && g.ModelsListConfig.Enabled && len(g.ModelsListConfig.Models) > 0
|
|
}
|