(models []T, name string)
| 221 | } |
| 222 | |
| 223 | func FindGalleryElement[T GalleryElement](models []T, name string) T { |
| 224 | var model T |
| 225 | name = strings.ReplaceAll(name, string(os.PathSeparator), "__") |
| 226 | |
| 227 | if !strings.Contains(name, "@") { |
| 228 | for _, m := range models { |
| 229 | if strings.EqualFold(strings.ToLower(m.GetName()), strings.ToLower(name)) { |
| 230 | model = m |
| 231 | break |
| 232 | } |
| 233 | } |
| 234 | |
| 235 | } else { |
| 236 | for _, m := range models { |
| 237 | if strings.EqualFold(strings.ToLower(name), strings.ToLower(fmt.Sprintf("%s@%s", m.GetGallery().Name, m.GetName()))) { |
| 238 | model = m |
| 239 | break |
| 240 | } |
| 241 | } |
| 242 | } |
| 243 | |
| 244 | return model |
| 245 | } |
| 246 | |
| 247 | // List available models |
| 248 | // Models galleries are a list of yaml files that are hosted on a remote server (for example github). |
no test coverage detected