minors fixes

This commit is contained in:
Thomas Demirdjian
2025-12-09 09:47:26 +01:00
parent 9c2087c574
commit 3f799af419
8 changed files with 155 additions and 164 deletions
+16 -33
View File
@@ -60,10 +60,10 @@ const HitParade = () => {
[topSongs]
);
const [playbacksCol1, playbacksCol2] = useMemo(() => {
const arr = Array.isArray(topPlaybacks) ? topPlaybacks : [];
return [arr.slice(0, 5), arr.slice(5)];
}, [topPlaybacks]);
const playbackList = useMemo(
() => (Array.isArray(topPlaybacks) ? topPlaybacks : []),
[topPlaybacks]
);
const resolvePlaybackThumbnail = useCallback((project) => {
const candidates = [
@@ -110,7 +110,7 @@ const HitParade = () => {
gap: 10,
paddingBottom: responsiveHeight(20),
}}
data={Array.isArray(topPlaybacks) ? topPlaybacks : []}
data={playbackList}
keyExtractor={(item) => item.id}
renderItem={({ item, index }) => (
<PlaybacksCard
@@ -146,34 +146,17 @@ const HitParade = () => {
);
const renderPlaybackColumns = () => (
<View style={{ flexDirection: "row", gap: 10, alignItems: "flex-start" }}>
<View style={{ flex: 1, gap: 10 }}>
{playbacksCol1.map((item, idx) => (
<PlaybacksCard
key={item.id}
rank={idx + 1}
title={item?.title || "Sans titre"}
artist={item?.userName}
thumbnailUrl={resolvePlaybackThumbnail(item)}
onPress={() => navigate(Routes.Playbacks, { projectId: item.id })}
/>
))}
</View>
{playbacksCol2.length > 0 && (
<View style={{ flex: 1, gap: 10 }}>
{playbacksCol2.map((item, idx) => (
<PlaybacksCard
key={item.id}
rank={5 + idx + 1}
title={item?.title || "Sans titre"}
artist={item?.userName}
thumbnailUrl={resolvePlaybackThumbnail(item)}
onPress={() => navigate(Routes.Playbacks, { projectId: item.id })}
/>
))}
</View>
)}
<View style={{ gap: 10 }}>
{playbackList.map((item, idx) => (
<PlaybacksCard
key={item.id}
rank={idx + 1}
title={item?.title || "Sans titre"}
artist={item?.userName}
thumbnailUrl={resolvePlaybackThumbnail(item)}
onPress={() => navigate(Routes.Playbacks, { projectId: item.id })}
/>
))}
</View>
);