Private
Public Access
1
0

chg: usr: change the shareable battle - add avatars to it - even on the og tags #4

This commit is contained in:
2026-04-15 16:44:57 +02:00
parent 573d409606
commit c52939a7a3
7 changed files with 224 additions and 53 deletions

View File

@@ -747,6 +747,13 @@
font: 800 24px 'Rajdhani', sans-serif;
letter-spacing: 2px;
&__img {
width: 100%;
height: 100%;
border-radius: 50%;
object-fit: cover;
}
&--red {
background: linear-gradient(135deg, rgba(173, 10, 5, 0.6) 0%, rgba(246, 125, 82, 0.4) 100%);
border: 2px solid rgba(173, 10, 5, 0.5);

View File

@@ -50,7 +50,7 @@ const RESULT_META = {
},
};
function Avatar({ name, color }) {
function Avatar({ name, color, avatarUrl }) {
const isRed = 'red' === color;
const initials = (name || '?').slice(0, 2).toUpperCase();
@@ -69,16 +69,29 @@ function Avatar({ name, color }) {
<div style={{ display: 'flex', flexDirection: 'column', alignItems: 'center', gap: 10 }}>
<div style={{
width: 72, height: 72, borderRadius: '50%',
background: gradient,
background: avatarUrl ? 'transparent' : gradient,
border: `2px solid ${border}`,
boxShadow: glow,
display: 'flex', alignItems: 'center', justifyContent: 'center',
font: '800 24px \'Rajdhani\', sans-serif',
color: textColor,
letterSpacing: 2,
overflow: 'hidden',
}}
>
{initials}
{avatarUrl ? (
<img
src={avatarUrl}
alt={name}
style={{
width: '100%',
height: '100%',
objectFit: 'cover',
}}
/>
) : (
initials
)}
</div>
<span style={{
font: '700 15px \'Rajdhani\', sans-serif',
@@ -197,7 +210,7 @@ export default function BattleDialog({ games }) {
</div>
</div>
<div className="bd-vs-panel">
<Avatar name={game.redName} color="red" />
<Avatar name={game.redName} color="red" avatarUrl={game.redAvatar} />
<div className="bd-vs-center">
<div className="bd-vs-score">
<span className="bd-vs-score__red">{game.redPoints ?? '—'}</span>
@@ -212,7 +225,7 @@ export default function BattleDialog({ games }) {
<i className={`fa ${meta.icon}`} /> {meta.label}
</div>
</div>
<Avatar name={game.blueName} color="blue" />
<Avatar name={game.blueName} color="blue" avatarUrl={game.blueAvatar} />
</div>
<div className="bd-stats">
<StatRow icon="fa-calendar" label="Date" value={game.date ?? '—'} />