From 96f2ba3c07e03f4880868b3f5ab85316180182ee Mon Sep 17 00:00:00 2001 From: Chris-1010 Date: Tue, 23 Sep 2025 01:25:23 +0100 Subject: [PATCH] Refactor `StatView` to improve UI layout and enhance track/artist statistics display with dynamic background colors --- app/src/pages/StatView.tsx | 64 ++++++++++++++++++++++++++------------ 1 file changed, 44 insertions(+), 20 deletions(-) diff --git a/app/src/pages/StatView.tsx b/app/src/pages/StatView.tsx index 593c08e..3e64bf3 100644 --- a/app/src/pages/StatView.tsx +++ b/app/src/pages/StatView.tsx @@ -45,38 +45,62 @@ const StatView = () => { return
Loading...
; } - return ( -
-
- navigate(-1)} /> + const stringToHash = (str: string) => { + if (!str) return 0; + let hash = 0; + for (let i = 0; i < str.length; i++) { + const char = str.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; // Convert to 32-bit integer + } + return Math.abs(hash); + }; -
+ return ( +
+ navigate(-1)} /> +
+

Track Statistics

-
    +
      {mostListenedSongs.map((track, index) => ( -
    • -
      - {index + 1}. {track.master_metadata_track_name} +
    • +
      + {index + 1}. {track.master_metadata_track_name}
      -
      - {formatSeconds(track.ms_played / 1000)} -
      +
      {formatSeconds(track.ms_played / 1000)}
    • ))}
-
+

Artist Statistics

-
    +
      {mostListenedArtists.map((artist, index) => ( -
    • -
      - {index + 1}. {artist.master_metadata_album_artist_name} +
    • +
      + {index + 1}. {artist.master_metadata_album_artist_name}
      -
      - {formatSeconds(artist.ms_played / 1000)} -
      +
      {formatSeconds(artist.ms_played / 1000)}
    • ))}