feat : better og-image

This commit is contained in:
2026-09-01 21:13:22 +07:00 Unverified
parent e3345e1d66
commit db2b60622a
4 changed files with 197 additions and 5 deletions
+31
View File
@@ -18,11 +18,42 @@ export default async function Image({
await connection();
const guide = await getCachedPublicGuide((await params).character);
if (!guide) return new Response("Not found", { status: 404 });
const recommendedWeapon = guide.weapons[0];
const recommendedArtifact = guide.artifactGroups.find(
(group) => group.rows.length > 0,
)?.rows[0];
return generateOgImage({
title: guide.name,
sub: guide.overview,
characterCard: true,
backgroundUrl: guide.character.nameCardImageUrl,
characterUrl: guide.character.splashImageUrl ?? guide.character.imageUrl,
recommendedWeapon: recommendedWeapon
? {
name: recommendedWeapon.weapon.name,
refinement: recommendedWeapon.refinement,
rarity: recommendedWeapon.weapon.rarity,
imageUrl: recommendedWeapon.weapon.imageUrl,
overallPercent: recommendedWeapon.overallPercent,
personalPercent: recommendedWeapon.personalPercent,
}
: null,
recommendedArtifact: recommendedArtifact
? {
first: {
name: recommendedArtifact.first.name,
rarity: recommendedArtifact.first.rarity,
imageUrl: recommendedArtifact.first.imageUrl,
},
second: recommendedArtifact.second
? {
name: recommendedArtifact.second.name,
rarity: recommendedArtifact.second.rarity,
imageUrl: recommendedArtifact.second.imageUrl,
}
: null,
percent: recommendedArtifact.percent,
}
: null,
});
}