diff options
| author | Brendan F <EpicWolverine@users.noreply.github.com> | 2023-05-14 23:12:27 -0700 |
|---|---|---|
| committer | Brendan F <EpicWolverine@users.noreply.github.com> | 2023-05-14 23:12:27 -0700 |
| commit | 737344a72d23dc97b0d0e73cc4ab7fdffd0fbf49 (patch) | |
| tree | 2a915b59ab29ac79012ca3345999d9e23562d1f9 /src/helpers/searchSong.ts | |
| parent | b19a001171bd8197a30f397091d67eba5e4c1111 (diff) | |
Merge in react app code
From sluchajfun and youtube-heardle-template
Diffstat (limited to 'src/helpers/searchSong.ts')
| -rw-r--r-- | src/helpers/searchSong.ts | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/helpers/searchSong.ts b/src/helpers/searchSong.ts new file mode 100644 index 0000000..24132f6 --- /dev/null +++ b/src/helpers/searchSong.ts @@ -0,0 +1,20 @@ +import { songs } from "../constants"; +import { Song } from "../types/song"; + +export function searchSong(searchTerm: string): Song[] { + searchTerm = searchTerm.toLowerCase(); + + return songs + .filter((song: Song) => { + const songName = song.name.toLowerCase(); + const songArtist = song.artist.toLowerCase(); + + if (songArtist.includes(searchTerm) || songName.includes(searchTerm)) { + return song; + } + }) + .sort((a, b) => + a.artist.toLowerCase().localeCompare(b.artist.toLocaleLowerCase()) + ) + .slice(0, 5); +} |
