Cleanup player page
This commit is contained in:
parent
b26718df8b
commit
c286ae4a21
@ -71,10 +71,15 @@ export const generateMetadata = async ({
|
|||||||
params,
|
params,
|
||||||
}: PageProps): Promise<Metadata> => {
|
}: PageProps): Promise<Metadata> => {
|
||||||
const query: string | undefined = trimQuery(params.slug?.[0]);
|
const query: string | undefined = trimQuery(params.slug?.[0]);
|
||||||
let embed: Metadata | undefined;
|
let embed: Metadata | undefined; // The player embed, if any
|
||||||
if (query) {
|
if (query) {
|
||||||
try {
|
try {
|
||||||
embed = await getPlayerEmbed(query); // Get the player embed
|
const player: CachedPlayer = await getPlayer(query); // Get the player to embed
|
||||||
|
return Embed({
|
||||||
|
title: `${player.username}'s Profile`,
|
||||||
|
description: `UUID: ${player.uniqueId}\n\nClick to view data about this player.`,
|
||||||
|
thumbnail: player.skin.parts.HEAD,
|
||||||
|
});
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
const code: number = (err as RestfulMCAPIError).code; // Get the error status code
|
const code: number = (err as RestfulMCAPIError).code; // Get the error status code
|
||||||
if (code === 400) {
|
if (code === 400) {
|
||||||
@ -112,7 +117,7 @@ export const generateViewport = async ({
|
|||||||
const query: string | undefined = trimQuery(params.slug?.[0]);
|
const query: string | undefined = trimQuery(params.slug?.[0]);
|
||||||
if (query) {
|
if (query) {
|
||||||
try {
|
try {
|
||||||
await getPlayerEmbed(query); // Try and get the player embed
|
await getPlayer(query); // Try and get the player embed
|
||||||
return { themeColor: "#55FF55" }; // Online
|
return { themeColor: "#55FF55" }; // Online
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
return { themeColor: "#AA0000" }; // Error
|
return { themeColor: "#AA0000" }; // Error
|
||||||
@ -135,24 +140,4 @@ const trimQuery = (query: string | undefined): string | undefined => {
|
|||||||
return query;
|
return query;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
|
||||||
* Get the embed for this page.
|
|
||||||
*
|
|
||||||
* @param query the query to embed, if any
|
|
||||||
* @returns the page embed
|
|
||||||
*/
|
|
||||||
const getPlayerEmbed = async (
|
|
||||||
query: string | undefined
|
|
||||||
): Promise<Metadata | undefined> => {
|
|
||||||
if (!query) {
|
|
||||||
return undefined;
|
|
||||||
}
|
|
||||||
const player: CachedPlayer = await getPlayer(query); // Get the player to embed
|
|
||||||
return Embed({
|
|
||||||
title: `${player.username}'s Profile`,
|
|
||||||
description: `UUID: ${player.uniqueId}\n\nClick to view data about this player.`,
|
|
||||||
thumbnail: player.skin.parts.HEAD,
|
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
export default PlayerPage;
|
export default PlayerPage;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user