Files
karma/transform/autocomplete.go
Łukasz Mierzwa e239fd05fd Import code from internal repository (#1)
Import code from internal repository
2017-03-23 16:58:04 -07:00

25 lines
729 B
Go

package transform
import (
"github.com/cloudflare/unsee/filters"
"github.com/cloudflare/unsee/models"
)
// BuildAutocomplete takes an alert object and generates list of autocomplete
// strings for it
func BuildAutocomplete(alerts []models.UnseeAlert) []models.UnseeAutocomplete {
acHints := map[string]models.UnseeAutocomplete{}
for _, filterConfig := range filters.AllFilters {
if filterConfig.Autocomplete != nil {
for _, hint := range filterConfig.Autocomplete(filterConfig.Label, filterConfig.SupportedOperators, alerts) {
acHints[hint.Value] = hint
}
}
}
acHintsSlice := []models.UnseeAutocomplete{}
for _, hint := range acHints {
acHintsSlice = append(acHintsSlice, hint)
}
return acHintsSlice
}