in pkg/output/output.go [201:237]
func DefaultPrintConfigs(names ...string) []PrintConfig {
// TODO: Refactor out anonymous funcs
defaultConfig := map[string]printConfig{
"Authors": {"Authors", func(k *api.Proposal) string { return strings.Join(k.Authors, ", ") }},
"LastUpdated": {"Updated", func(k *api.Proposal) string { return k.LastUpdated }},
"SIG": {"SIG", func(k *api.Proposal) string {
if strings.HasPrefix(k.OwningSIG, "sig-") {
return k.OwningSIG[4:]
}
return k.OwningSIG
}},
"Stage": {"Stage", func(k *api.Proposal) string { return string(k.Stage) }},
"Status": {"Status", func(k *api.Proposal) string { return string(k.Status) }},
"Title": {"Title", func(k *api.Proposal) string {
if k.PRNumber == "" {
return k.Title
}
return "PR#" + k.PRNumber + " - " + k.Title
}},
"Link": {"Link", func(k *api.Proposal) string {
if k.PRNumber == "" {
return "https://git.k8s.io/enhancements/keps/" + k.OwningSIG + "/" + k.Name
}
return "https://github.com/kubernetes/enhancements/pull/" + k.PRNumber
}},
}
configs := make([]PrintConfig, 0, 10)
for _, n := range names {
// copy to allow it to be tweaked by the caller
c := defaultConfig[n]
configs = append(configs, &c)
}
return configs
}