empty placeholder

This commit is contained in:
xianyi
2026-01-23 15:38:03 +08:00
parent a7b77963fd
commit c9516b4899
22 changed files with 164 additions and 111 deletions

View File

@@ -1,9 +1,8 @@
import { EmptyPlaceholder } from "@/components/empty-placeholder";
import { ThemedText } from "@/components/themed-text";
import { IconSymbol } from "@/components/ui/icon-symbol";
import { getInitials, getLogoGradient } from "@/lib/avatar-utils";
import { MatchDetailData } from "@/types/api";
import { Image } from "expo-image";
import { LinearGradient } from "expo-linear-gradient";
import React, { useMemo, useState } from "react";
import {
ScrollView,
@@ -161,10 +160,6 @@ export function BasketballStats({ data, isDark }: BasketballStatsProps) {
const awayTeamLogo = match.awayTeamLogo || "";
const hasHomeLogo = homeTeamLogo && homeTeamLogo.trim() !== "" && !homeTeamLogo.includes("placehold");
const hasAwayLogo = awayTeamLogo && awayTeamLogo.trim() !== "" && !awayTeamLogo.includes("placehold");
const homeGradient = getLogoGradient(homeTeamName);
const awayGradient = getLogoGradient(awayTeamName);
const homeInitials = getInitials(homeTeamName);
const awayInitials = getInitials(awayTeamName);
return (
<View style={[styles.container, { backgroundColor: bgColor }]}>
@@ -199,12 +194,7 @@ export function BasketballStats({ data, isDark }: BasketballStatsProps) {
{hasHomeLogo ? (
<Image source={{ uri: homeTeamLogo }} style={styles.teamTabLogo} contentFit="contain" />
) : (
<LinearGradient
colors={[homeGradient.color1, homeGradient.color2]}
style={styles.teamTabLogoGradient}
>
<ThemedText style={styles.teamTabLogoText}>{homeInitials}</ThemedText>
</LinearGradient>
<EmptyPlaceholder type="team" size={24} />
)}
</TouchableOpacity>
<TouchableOpacity
@@ -218,12 +208,7 @@ export function BasketballStats({ data, isDark }: BasketballStatsProps) {
{hasAwayLogo ? (
<Image source={{ uri: awayTeamLogo }} style={styles.teamTabLogo} contentFit="contain" />
) : (
<LinearGradient
colors={[awayGradient.color1, awayGradient.color2]}
style={styles.teamTabLogoGradient}
>
<ThemedText style={styles.teamTabLogoText}>{awayInitials}</ThemedText>
</LinearGradient>
<EmptyPlaceholder type="team" size={24} />
)}
</TouchableOpacity>
</View>