package utils import ( "os" "path/filepath" "strings" "gitlab.com/ChaotiCryptidz/musicutil/types" ) func isValidFileExtension(filePath string) bool { ext := strings.TrimPrefix(filepath.Ext(filePath), ".") if ext == "mp3" { return true } else if ext == "flac" { return true } return false } func ScanForMusic(srcDir string) ([]*types.File, error) { files := make([]*types.File, 0) err := filepath.Walk(srcDir, func(path string, info os.FileInfo, err error) error { if err != nil { return err } if !info.IsDir() && isValidFileExtension(path) { files = append(files, types.FileFromPath( srcDir, path, )) } return nil }) if err != nil { return nil, err } return files, nil }